PHP

Código PHP para extrair as imagens de uma URL (website)

Como extrair as de um site utilizando . Monte uma lista com as URL das imagens ou salve-as em um diretório em seu servidor.

Primeira parte

Este código é parte principal de nosso script, nele iremos acessar a URL, baixar todo o código e processa-lo, para localizar as imagens.

$url = "http://siteexemplo.com.br";

$html = file_get_contents( $url );

$dom = new domDocument;
@$dom->loadHTML($html);
$dom->preserveWhiteSpace = false;
$images = $dom->getElementsByTagName('img');

$output = array();

foreach ($images as $image) {
  $output[] = $image->getAttribute('src');
}

echo "
";
print_r($output);
echo "
";

Com a função file_get_contents pegamos todo contudo da página.

Após isso utilizando o domDocument, carregamos o HTML “baixado” com a função loadHTML(), uma fez carregado com sucesso poderemos utilizar as funções disponíveis na classe para trabalhar com HTML.

Utilizando getElementsByTagName procuramos por ocorrências da Tag “img”, que é o nosso objetivo.

Salvando as imagens

Complemente o código acima com este para salvar as imagens em um diretório no seu servidor.

$dir = "temp";

foreach( $output as $url ){
 
 $ch = curl_init($url);
 
 $url = explode("/",$url);
 
 $name = $url[count($url) - 1];
   
 $fp = fopen($dir  . "/" . $name, 'wb');

 curl_setopt($ch, CURLOPT_FILE, $fp);
 curl_setopt($ch, CURLOPT_HEADER, 0);
 curl_exec($ch);
 curl_close($ch);
 fclose($fp); 

}

Código Completo

Para extrair as imagens de um site.

$url = "http://rogertakemiya.com.br";

$html = file_get_contents( $url );

$dom = new domDocument;
@$dom->loadHTML($html);
$dom->preserveWhiteSpace = false;
$images = $dom->getElementsByTagName('img');

$output = array();

foreach ($images as $image) {
  $output[] = $image->getAttribute('src');
}


$dir = "temp";

foreach( $output as $url ){
 
 $ch = curl_init($url);
 
 $url = explode("/",$url);
 
 $name = $url[count($url) - 1];
   
 $fp = fopen($dir  . "/" . $name, 'wb');

 curl_setopt($ch, CURLOPT_FILE, $fp);
 curl_setopt($ch, CURLOPT_HEADER, 0);
 curl_exec($ch);
 curl_close($ch);
 fclose($fp); 

}

 

Ver comentários

Post Recentes

Por que devo sempre manter o Magento 2 atualizado?

Segurança: Atualizações frequentes geralmente incluem patches de segurança para corrigir vulnerabilidades identificadas. Ao manter o Magento atualizado, você reduz significativamente…

1 mês atrás

Adicionar uma mensagem de Alerta ou Aviso do Admin do Magento 2

Como adicionar uma mensagem de Alerta ou Aviso do Admin do Magento 2 Injete o Magento\Framework\Message\ManagerInterface no construtor da sua…

1 mês atrás

Exibir mensagens erro/sucesso da Classe: Magento\Framework\Message\ManagerInterface

Para exibir as mensagens adicionadas na classe Magento\Framework\Message\ManagerInterface em um arquivo .phtml, você pode usar o seguinte código: <?php $objectManager…

1 mês atrás

Exportar as categorias do Magento 2 em um XML

Para criar um script no Magento 2 que exporte as categorias para um arquivo XML com o nome da categoria,…

2 meses atrás

Colocar um video como Background utilizando HTML + CSS

Para definir um vídeo MP4 como plano de fundo em um <div> usando HTML e CSS, você pode seguir estas…

4 meses atrás

Desativar o “lastname” no Magento 2

Como desativar o "lastname" no Magento 2 e Adobe Commerce Desativando a obrigatoriedade do campo Execute a SQL abaixo diretamente…

4 meses atrás