Python lit les données du site web ligne par ligne quand elles sont disponibles
Je suis en utilisant urllib2
pour lire les données à partir de l'url, ci-dessous, l'extrait de code :
data = urllib2.urlopen(urllink)
for lines in data.readlines():
print lines
Url que je suis de l'ouverture, est en fait un script cgi qui fait un peu de traitement et d'imprimer les données en parallèle. Script CGI prend environ 30 minutes à compléter. Donc, avec le code ci-dessus, je pouvais voir à la sortie de l'après 3o minutes lors de l'exécution d'un script CGI est terminé.
Comment puis-je lire les données à partir de l'adresse dès qu'il est disponible et à l'imprimer.
source d'informationauteur sarbjit
Vous devez vous connecter pour publier un commentaire.
Juste boucle directement sur le fichier de l'objet:
Ce lit le flux de données ligne par ligne (en interne, la prise de fileobject appels
.readline()
chaque fois que vous effectuer une itération). Ceci signifie que votre serveur envoie des données dès que possible.Appel
.readlines()
(pluriel) garantit que vous lisiez la totalité de la requête avant vous de début de boucle, de ne pas le faire.Vous pouvez également utiliser le
demande
de la bibliothèquequi a plus d'un soutien explicite de la demande en streaming:Noter que ceci ne fonctionnera que si votre serveur commence la diffusion en continu de données immédiatement. Si votre CGI ne produit pas de données jusqu'à ce que le processus est terminé, il est inutile d'essayer de transmettre les données.