✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

Juhtumiuuring: kasutage Tumblri 3000 piltide roomamiseks PHPQueryt

25

Tumblris on ilusaid pilte. Piltide otsimiseks ja allalaadimiseks saame kasutada Tumblri API-sid, kuid see nõuab tavaliselt registreerimist ja API-võtmeid. Teine võimalus on roomata HTML-i veebilehtedel ja sõeluda DOM-i (Document Object Model), mis võimaldab meil hankida piltide URL-id ja nende kirjeldused.

Seal on mugav raamatukogu, mida nimetatakse PHPQueryks. See võimaldab meil kirjutada JQuery stiilis PHP – d nii, nagu kirjutame JQuery, kasutades CSS-i valijaid. See muudab PHP võimsaks mis tahes HTML-lehtede DOM-i analüüsimisel.

phpquery

Järgmine on psudokood, mis illustreerib HTML – lehtede sõelumist ja piltide haaramist.

PHPQuery abil on DOM-i analüüsimine palju lihtsam! Klõpsake säutsumiseks

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); 

Väheste muudatustega saate lasta skriptil mõne minuti jooksul indekseerida mitu tuhat pilti. Kõik pildid salvestatakse VPS-serveri kohalikesse andmebaasidesse. Pilte saab näha aadressil: uploadbeta.com

Parem on määrata lehel roomamise vahele ajavahemik, vastasel juhul võib IP-aadress olla blokeeritud.

Juhtumiuuring: kasutage Tumblri 3000 piltide roomamiseks PHPQueryt

Pildi indekseerimine

PS, piltide üleslaadimise veebisait toetab mõningaid API-sid erinevatel eesmärkidel, mille puhul kehtivad õiglase kasutamise eeskirjad: https://uploadbeta.com/picture-gallery/faq.php#api

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem