ebay: parsen
depp
- php
moin
wenn ich im IE http://search.ebay.de/yakumo_QQsorecordsperpageZ100
eingebe, so kommt ne ebay site, in deren source sich die artikel in nem format für javascript wiederfinden lassen.
wenn allerdings der selbe link mit php selbst aufgerufen wird, so kommt eine html version der artikel.
wer sich schonmal damit befasst hat, weiß sicher, was ich meine: dSi etc...
wie muss ich die such funktion aufrufen, damit ebay mir die JS version gibt?
danke für hilfe
Moin depp,
wenn ich im IE http://search.ebay.de/yakumo_QQsorecordsperpageZ100
eingebe, so kommt ne ebay site, in deren source sich die artikel in nem format für javascript wiederfinden lassen.
wenn allerdings der selbe link mit php selbst aufgerufen wird, so kommt eine html version der artikel.
Versuch beim Senden der HTTP-Header bei deiner Socketverbindung einen gültigen HTTP-USer-Agent-String vom IE zu emulieren.
Dann kannst du natürlich nicht mit den gemütlichen Funktionen von php, z.b. file("http://search.ebay.de/yakumo_QQsorecordsperpageZ100"); arbeiten, sondern besorgst dir den Inhalt der Datei eben über deinen HTTP-Header.
wer sich schonmal damit befasst hat, weiß sicher, was ich meine: dSi etc...
dSi-was?
wie muss ich die such funktion aufrufen, damit ebay mir die JS version gibt?
Ich habe bei ebay sowieso noch nie JS-Versionen von Seiten bekommen oder sowas komisches und kann mir es auch schlecht vorstellen - immerhin wollen die ihre seiten auch vor "automatischen besuchen" von robots oder sowas schützen. denke ich mal.
Gruß,
Sven
moin
kann man file nicht irgendwie manuell so nen header zusatz übergeben?
oder welche fkt sollte ich hierfür verwenden?
danke
kann man file nicht irgendwie manuell so nen header zusatz übergeben?
nicht das ich wüsste
oder welche fkt sollte ich hierfür verwenden?
das ganze könnte etwa so aussehen:
$fp = fsockopen($host,80);
fputs($fp, "GET $path HTTP/1.1\n");
fputs($fp, "Host: $host\n");
fputs($fp, "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; de-DE; rv:1.7) Gecko/20040626 Firefox/0.9.1\n");
fputs($fp, "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\n");
fputs($fp, "Connection: close\n\n");
while(!feof($fp)) {
$res .= fgets($fp, 128);
}
fclose($fp);
wobei $res dann die komplette antwort des servers enthält.