Grab-ovanje stranice sa neta

1

Grab-ovanje stranice sa neta

offline
  • Pridružio: 05 Nov 2007
  • Poruke: 21
  • Gde živiš: Malta

Cao svima,

Obicno pristupam source-u stranica sa $v = file_get_contents($url); i pokupim sta mi treba. Ali whois.domaintools.com ne dozvoljava da mu se tako pristupi - zali se da nema heder dobar. Verovatno ocekuje i dozvoljava pristup samo browserom a ne iz skripte.

Probao sam onda sa:

  error_reporting(E_ALL);   $fp = fsockopen("whois.domaintools.com", 80, $errno, $errstr, 30);   if (!$fp) {      echo "$errstr ($errno)<br />\n";   } else {     $out = "GET /elitesecurity.org HTTP/1.1\r\n";     $out .= "Host: whois.domaintools.com\r\n"    ."User-Agent: ".$_SERVER['HTTP_USER_AGENT']."\r\n"    ."Accept-Language: en-us,en;q=0.5\r\n"    ."Accept-Charset: UTF-8,*\r\n"    ."Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n"    ."Connection: close\r\n"    ."Cache-Control: max-age=0\r\n\r\n";     fputs($fp, $out);     $res= '';     while (!feof($fp)) $res .= fgets($fp, 128);     fclose($fp);     $res= trim(substr($res,strpos($res,"\r\n\r\n") + 4));        echo $res;     echo "<textarea cols=350 rows=30>".$res."</textarea><br>";   };

Ovaj echo $res mi lepo prikaze stranicu kako zelim, ali ako zelim da pristupim kodu i da uzmem sta zelim od podataka nema tih podataka. Onda sam stavio ovo textarea polje da mi stavi sadrzaj promenljive $res i sadrzaj je BAN STRANICA:

2730 <html> <head>    <title>Ban Page</title>               <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="http://blog.domaintools.com/feed/" />     <link rel="stylesheet" type="text/css" href="http://source.domaintools.com/style/global_screen.css?1193635470" />    ...

Pise da sam mozda preterao dnevnu kvotu ali odmah posle toga probam iz browsera i lepo odradi. Da li mi mozda fali neki parametar u zahtevu za stranicom ili ...? Na koji nacin da pristupim kodu stranice? Ima li neki jos nacin?

Hvala unapred



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

Jesi li probao da stavis User Agent nekog browsera?



offline
  • Pridružio: 05 Nov 2007
  • Poruke: 21
  • Gde živiš: Malta

bobby ::Jesi li probao da stavis User Agent nekog browsera?

Jesam:
Umesto
."User-Agent: ".$_SERVER['HTTP_USER_AGENT']."\r\n"
Stavio sam:
."User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.8) Gecko/20071022 Ubuntu/7.10 (gutsy) Firefox/2.0.0.8\r\n"

Sad stranica odradi kako treba, ali mi prijavi gresku:

Javascript must be turned on to use the full features of this site.

Kako definisati/poslati iz PHP da imam JavaScript ... da me pusti jos ta 'rampa'?

Source stranice je:

<html> <head>    <title>Elitesecurity.org - Elite Security</title>     <meta name="description" content="elitesecurity.org web forumi">     <meta name="keywords" content="elitesecurity, org, web, forumi,  security, forum, forumi"> ...

offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

Probaj pod Accept: da postavis i sledeci MIME type:
application/x-javascript

offline
  • Pridružio: 05 Nov 2007
  • Poruke: 21
  • Gde živiš: Malta

bobby ::Probaj pod Accept: da postavis i sledeci MIME type:
application/x-javascript

Svaka cast majstore. Radi. Hvala na pomoci.

Morao sam da dodam: application/x-javascript,text/javascript,

."Accept: text/xml,application/x-javascript,text/javascript,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n"

offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

Imas srece da sam se ceo vikend bavio bas HTTP protokolom, posto i sam programiram nesto.
Ja sam danas razbijao glavu da isprogramiram da moj program prihvata Content-Encoding: gzip, tako da sam pregledao brdo uputstava.
Ostao mi Content-Encoding: deflate, ali to mora da saceka sledeci vikend posto je obimno (Apache i IIS koriste razlicite deflate kompresije).

offline
  • Blood  Male
  • Ugledni građanin
  • Pridružio: 26 Jul 2003
  • Poruke: 384
  • Gde živiš: Beograd

a sa cim ti radis trenutno, sa IIS ili Apache?

offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

@Blood
Ako si mene pitao (pretpostavljam da jesi), na ovome radim:
http://malzilla.sourceforge.net/

Znaci, klijent/browser je u pitanju, namenjen lovu na malware.

Skoro sam bio naisao na problem da su neki serveri uporno slali gzip-ovane podatke, i ako Malzilla to nije zahtevala od servera.
To me je nateralo da poradim na gzipovanim prenosima.
Deflate jos nisam poceo, ali sam nasao dovoljno podataka da imam cime da se zanimam sledeci vikend.

offline
  • Blood  Male
  • Ugledni građanin
  • Pridružio: 26 Jul 2003
  • Poruke: 384
  • Gde živiš: Beograd

pazi, gzip se obicno koristi za "server side" cache-ovanje stranica, samim tim ubrzavas ucitavanje same stranice(drasticno), i ja sam sam koristio tu metodu vise puta, znaci ne mora browser da je trazi - ja je saljem browseru sa naznakom(headerom) da je cache-ovana stranica i da treba tako da je otvara...

offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

Blood, ako moj browser ne posalje serveru sledecu liniju u requestu, onda server ne sme da mi posalje gzip-ovanu stranicu:
Accept-Encoding: gzip

Server, ukoliko podrzava gzip, u HTTP headeru salje sledece:
Content-Encoding: gzip

E, sada je na meni da to sto je stiglo dekompresujem.


Problem zbog koga sam morao da implementiram ovo u Malzillu je sto sam dobijao gzip-ovane stranice bez da posaljem onaj Accept-Encoding.
Ako server uradi tako nesto, on krsi osnovna pravila komunikacije.

Ko je trenutno na forumu
 

Ukupno su 961 korisnika na forumu :: 27 registrovanih, 5 sakrivenih i 929 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: Apok, Bane san, cetvrti.musketir, DPera, FileFinder, Grond, jukeboxer, krkalon, Milometer, mkukoleca, MrNo, naki011, Panter, panzerwaffe, plavii, predragc, procesor, repac, rodoljub, suton, uruk, vladulns, Vlajman1957, voja64, vukdra, vukovi, zillbg