Pereiti prie turinio

Kaip gauti turinį iš kitos svetainės (PHP)


Rekomenduojami pranešimai

Optimaliausias, mano nuomone, variantas siekiant gauti turinį iš kitos svetainės, yra XML. Tačiau kartais svetainės nesuteikia niekur XML duomenų išvedimo. Yra vienas labai paprastas variantas kurio pagalba galite gauti info iš kitos svetainės.

 

Iškart nepatariu naudoti šio varianto cikluose nes užkrovimas ryškiai padidės. Šis variantas tinka labiau jei jums reikia pvz IMDB.COM balsavimo reitingo arba siekiant pagreitinti informacijos pildymą turinio valdymo sistemoje kopijuojant info iš kitur.

 

Taigi einant prie kodo, pagrindinės dvi funkcijos kurios čia bus naudojamos, tai file_get_contents(); ir preg_match_all();

 

 

 

$adresas = "http://www.url-is-kur-imsite-info.com";

$content = file_get_contents($adresas);
// nurodote adresa is kur pasiimsit info

$desc = "|<span id=\"description\">(.*)</span>|";
// nurodote vieta HTML kode kuria info norite pasiimti
// savaime suprantama jusu gaunama info yra (.*) vietoje

preg_match_all($desc,$content,$panasumai);
//sudedate viska i preg_match_all funkcija
//bei sukuriate masyva pavadimimu $panasumai

;

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 1 mėnesio...
  • po 2 mėnesių...
  • po 2 mėnesių...
  • po 2 mėnesių...

Šitas variantas gali nesunkiai perkrauti tavo serverį. Ypač jeigu nori imti info iš didesnio savo svoriu tinklapio.

Nebūtinai. Jeigu naudosi Cronjob, tai jokios perkrovos nebus. Pavyzdžiui, jeigu bus imamas IMDB reitingas, tai to daryti nebūtina, vos tik užsikrovus tinklalapiui. Kur kas geriau tą reitingą įrašyti į duomenų bazę, o vėliau po pasirinkto laiko (po dienos, po savaitės ar po mėnesio) tą reitingą atnaujinti.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Na jei jau prikėlė šitą temą, tai norėčiau pridėti, kad file_get_contents() geriau niekur nenaudot, nes ši funkcija nepalyginamai lėtesnė negu curl, kaip ir irmantas-11 sakė. Ne kartą bandžiau su microtime funkcija išmatuot laikus krovimo.

 

function curl($url) {
   $ch = curl_init();
   curl_setopt($ch, CURLOPT_URL, $url);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   $result = curl_exec($ch);
   curl_close($ch);
return $result;
}
$adresas = "http://www.url-is-kur-imsite-info.com";
$content = curl($adresas);

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 2 metų...

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...