Jump to content
DTP

Recolher imagens com PHP

Recommended Posts

DTP

Bom dia a todos

Necessito recolher algumas imagens de um site, para isso estou a utilizar o php.

Pretendo faze-lo da forma como está em baixo, mas desta maneira ainda não consegui que funcione.

<?php

$urlanuncio = "http://www.lealecatita.com/viatura/Renault-Megane-ST-15-dCi-GT-Line-SS-(110cv)-(5p)/2047322";

$conteudo = file_get_contents($urlanuncio);

preg_match_all('/\s(src)=["\']?((?:.(?!["\']?\s+(?:\S+)=|[>"\']))+.)["\']?/', $conteudo,$resultado);


    //echo '<pre>';

    //print_r($resultado);


$urlimagem = $resultado [2][13];

$imagem = file_get_contents($urlimagem);

echo $imagem;

$fp = fopen("imagem1.jpg", "w");
fwrite($fp, $imagem);
fclose($fp);


?>

Mas se copiar o URL da imagem e fazer da seguinte forma funciona na perfeição.

<?php


$a="http://i.ftbs.sl.pt/i.axd?pic=http%3a%2f%2fauto1.imgs.sapo.pt%2f0868%2f00000868%2fv%2f0322%2f002047322%2fOriginal%2fRenault-Megane-91274271.jpg&hash=34bc106e0bc8f5a9c9fcac6411fc6056&W=612&H=460&errorpic=http%3a%2f%2f1.ftbs.sl.pt%2fsiteengine%2fimages%2fno_image.jpg&color=FFFFFF&q=100";

$content = file_get_contents($a);

echo $content;

$fp = fopen("imagem.jpg", "w");
fwrite($fp, $content);
fclose($fp);


?>

Ainda não percebi o que é que está mal.

Alguém pode dar-me uma ajuda?

Desde já obrigado.

Share this post


Link to post
Share on other sites
HappyHippyHippo

algo como isto ?

<?php

$urlanuncio = "http://www.lealecatita.com/viatura/Renault-Megane-ST-15-dCi-GT-Line-SS-(110cv)-(5p)/2047322";
$conteudo = file_get_contents($urlanuncio);

preg_match_all('/(?<=src\=)["\']?((?:.(?!["\']?\s+(?:\S+)=|[>"\']))+.)["\']?/', $conteudo,$resultado);

$resultado = array_filter($resultado[0], function ($hit) {
    return preg_match('/\.jpg|\.jpeg/', $hit);
});

foreach ($resultado as $key => $hit) {
    $fp = fopen($key.'.jpg', 'w');
    fwrite($fp, file_get_contents($hit));
    fclose($fp);
}

 


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
DTP

Olá HappyHippyHippo

Desde já obrigado por teres respondido, quando abri o tópico não expliquei bem qual era o problema.

O problema é que na primeira situação que apresentei os ficheiros quando gravados ficam vazios, e na segunda situação os ficheiros ficam com as imagens.

A solução que apresentaste é boa mas os ficheiros depois de gravados, que deviam conter as imagens, também ficam vazios.

Não sei se consegui explicar bem o problema.

Fazes ideia do que possa ser?

Edited by DTP

Share this post


Link to post
Share on other sites
DTP

Boa tarde a todos

Já resolvi o problema!

Obrigado a todos os que ajudaram e os que tentaram ajudar!............

Se alguém precisar da solução posso facultar.

Share this post


Link to post
Share on other sites
HappyHippyHippo

Só  agora é que vi que o código que apresentei não estava a dar.. É o que dá mandar uma solução martelada nesta caixinha do fórum :)

Se tens uma solução deverias apresentar para referência futura

  • Vote 1

IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.