HTTP - Web - Bot
Verfasst: Samstag 7. Februar 2009, 11:55
Hallo,
das ist mein erster Thread im Forum.
Ich bin gerade dabei eine Art Bot zu schreiben, der sich im Internet so autentisch wie möglich wie herkömmliche Browser (IE, Firefox, ...) verhalten soll.
Ich verwende mechanize, clientForm und urllib2.
Standardsachen, wie das Ändern des User-Agents, oder andere HTTP-header habe ich schon hinbekommen. Jetzt hängt es noch im Detail.
Ich habe z.B. mitbekommen, dass Python mit urllib2 eine HTTP-Verbindung über den Source-Port 1604 (icabrowser) aufbaut. Im Firefox z.B. ist es Port 1781 (answersoft-lm). Ich habe aber nirgends eine Stelle finden können, an der man den Source Port einstellen kann. Gibt es hierfür irgendeine Schnittstelle?
Außerdem habe ich festgestellt, dass die Zeilenumbrüche im HTTP-Protokoll auf einem Windows Rechner (wie üblich) \r\n ist und auf einem Linux-Rechner nur \n. Lässt sich daraus auf Server-Seite auf das Betriebssystem schließen? Wenn ja, kann man die Zeilenumbrüche manipulieren?
Das sind sehr detalierte und wahrscheinlich auch schwierig zu beantwortende Fragen, aber ich hoffe, dass ihr mir helfen könnt.
das ist mein erster Thread im Forum.
Ich bin gerade dabei eine Art Bot zu schreiben, der sich im Internet so autentisch wie möglich wie herkömmliche Browser (IE, Firefox, ...) verhalten soll.
Ich verwende mechanize, clientForm und urllib2.
Standardsachen, wie das Ändern des User-Agents, oder andere HTTP-header habe ich schon hinbekommen. Jetzt hängt es noch im Detail.
Ich habe z.B. mitbekommen, dass Python mit urllib2 eine HTTP-Verbindung über den Source-Port 1604 (icabrowser) aufbaut. Im Firefox z.B. ist es Port 1781 (answersoft-lm). Ich habe aber nirgends eine Stelle finden können, an der man den Source Port einstellen kann. Gibt es hierfür irgendeine Schnittstelle?
Außerdem habe ich festgestellt, dass die Zeilenumbrüche im HTTP-Protokoll auf einem Windows Rechner (wie üblich) \r\n ist und auf einem Linux-Rechner nur \n. Lässt sich daraus auf Server-Seite auf das Betriebssystem schließen? Wenn ja, kann man die Zeilenumbrüche manipulieren?
Das sind sehr detalierte und wahrscheinlich auch schwierig zu beantwortende Fragen, aber ich hoffe, dass ihr mir helfen könnt.