Tem algumas imagens legais no Tumblr. Podemos usar as APIs do Tumblr para pesquisar e baixar imagens, mas isso geralmente requer o registro e as chaves de API. Outra maneira é rastrear as páginas da Web em HTML e analisar o DOM (Document Object Model), o que nos permite recuperar as URLs das imagens e suas descrições.
Existe uma biblioteca útil que é chamada PHPQuery. Ele nos permite escrever PHP no estilo JQuery da maneira que escrevemos JQuery, usando seletores CSS. Isso torna o PHP poderoso na análise do DOM de qualquer página HTML.
consulta php
A seguir está um pseudocódigo que ilustra como analisar as páginas HTML e capturar as imagens.
Com PHPQuery, fica muito mais fácil analisar o DOM! Clique para Tweetar
require('phpQuery.php');
require('app.php');
$ip = get_ip_address();
function grab($url, $lvl = 5) {
global $ip;
if ($lvl < = 0) {
return;
}
$doc = phpQuery::newDocumentFile($url);
foreach(pq('div.TumbPostPane') as $p) {
$img = pq($p)->find('img.PhotoPostMainPhoto')->attr('src');
$desc = htmlspecialchars(trim(pq($p)->find('div.MetaPanel')->html()));
$url = pq($p)->find('a')->attr('href');
$err = '';
if (UploadPic($img, $desc, $err, $ip)) { // find pictures and save locally
echo "OK = $err n";
} else {
echo str_replace("<br />", "n", "Error = $err n");
}
grab($url, $lvl - 1); // recursive download
}
}
grab("<a class="vglnk" target="_blank" href="https://uploadbeta.com" rel="nofollow"><span>https</span><span>://</span><span>uploadbeta</span><span>.</span><span>com</span></a>", 1);
Com poucas modificações, você pode deixar o script rastrear vários milhares de imagens em poucos minutos. Todas as imagens são salvas em bancos de dados locais no servidor VPS. As fotos podem ser vistas em: uploadbeta.com
É melhor definir um intervalo de tempo entre o rastreamento da página, caso contrário, o endereço IP poderá ser bloqueado.
Rastreamento de imagem
PS, o site Image Upload suporta algumas APIs para vários fins sujeitos à política de uso justo: https://uploadbeta.com/picture-gallery/faq.php#api
