ich urllib2
bin mit den Daten aus der URL zu lesen, unter dem Codeausschnitt ist:Python las Website-Daten Zeile für Zeile, wenn verfügbar
data = urllib2.urlopen(urllink)
for lines in data.readlines():
print lines
URL, die ich öffnen bin, ist eigentlich ein CGI-Skript, das einige tut verarbeitet und druckt die Daten parallel. CGI-Skript dauert etwa 30 Minuten. Mit dem obigen Code konnte ich die Ausgabe erst nach 3o Minuten sehen, wenn die Ausführung des CGI-Skripts abgeschlossen ist.
Wie kann ich die Daten von der URL lesen, sobald sie verfügbar ist und drucken Sie sie aus.
Die erste Lösung funktioniert nicht, gibt es eine Lösung, die nur die Standardbibliothek verwendet? – sarbjit
@sarbjit: Ich überprüfte noch einmal; Es gibt keinen Grund für "urllib2" zu blockieren, bis die Anfrage abgeschlossen ist. Ihr Server sendet die Daten einfach nicht, bis das CGI fertig ist. –
@sarbjit: Sie können dies selbst mit 'resp = urllib2.urlopen ('http://vhost2.hansenet.de/10_mb_file.bin')' testen, was sofort zurückkehrt; dann dauert 'for line in resp: pass 'eine Weile, da eine 10 MB große Textdatei mit 1 kb Zeilen heruntergeladen wird. –