Python: Let´s work togethervon Kai Surendorf Newsfeeds anderer Webseiten einlesen? Eigene Seiten automatisch bei Suchmaschinen eintragen? Mit der urllib von Python sind solche Aufgaben schnell und ohne Probleme gelöst. Die urllib von Python dient dazu, Daten von anderen Servern via HTTP einzulesen. Zuerst ein einfaches Skript, das den Newsfeed von Dr. Web einliest und als SSI aufgerufen werden kann.
Nach dem Import der benötigten Module (cgi und urllib) wird die entsprechende Adresse geöffnet, was mit urllib.urlopen () geschieht. In den Klammern in Anführungsstrichen ist die URL anzugeben. Diese wird hier per GET empfangen und steht nun als Datei-Objekt zur Verfügung und wartet darauf, eingelesen zu werden. Da der ganze Text des Newsfeed auf einmal ausgegeben werden soll, wird er komplett in eine Variable eingelesen mit newsfeed.read (). Es wäre auch, analog zu Dateien, möglich, einzelne Zeilen mit newsfeed.readline () einzulesen und weiterzuverarbeiten. In diesem Beispiel soll der Newsfeed aber gleich ausgegeben werden, was mit den letzten beiden Zeilen geschieht. Schon haben Sie immer die letzten Neuigkeiten bei Dr. Web auf Ihrer eigenen Website. Ein persönlicher Eintragsdienst
Nehmen Sie an, Sie sprechen dieses Skript über ein HTML-Formular an,
mit dem Sie sowohl die anzumeldende URL als auch ihre Email übergeben.
Nach dem Import der Module werden diese Eingaben in Variablen eingelesen.
Anschließend gilt es, die für die Anmeldung bei einer fiktiven
Suchmaschine notwendigen Daten zusammenzustellen. Dies erfolgt mit Hilfe
eines Dictionaries. Dies bedeutet, dass den Schlüsselwörtern oder Keys
die entsprechenden Werte zugeordnet werden. Zum Key url soll der Wert der
Variable url gehören, zum Key email der Wert der Variable email und dem
Key action wird der Wert Submit zugeordnet. Der Aufruf der Funktion
urlencode sorgt dafür, dass aus diesen Paaren ein korrekter String wird,
der an das antsprechende Ziel-Programm übergeben werden kann. Nachdem die
Parameter korrekt codiert wurden, wird mit urllib.urlopen () die Anfrage
an die fiktive Adresse abgeschickt. Da anschließend nach einem Komma noch
die zuvor erstellten Parameter ebenfalls übergeben werden, erfolgt diese
Anfrage im Gegensatz zum ersten Beispiel hingegen via POST.
|
| ||||||
|
|
Partner: Template OK - PCopen - SITEopen - PCopen Schweiz - HTMLopen Schweiz - VirtualUniversity.ch - WEB-SET.com - YesMMS - Job und Karriere |