Ecrire le résultat de la requète print dans un fichier .txt
alex240
Messages postés
173
Statut
Membre
-
ElementW Messages postés 5690 Statut Contributeur -
ElementW Messages postés 5690 Statut Contributeur -
Bonjour,
je débute en pyhthon,
comment peut on stocker la source html d'une page web (avec urlopen) dans un fichier texte:
sock = urllib.request.urlopen("http://www.flightaware.com/ressources/airport/LFPG/weather")
htmlSource = sock.read
sock.close()
comment faire pour que le code source soit écrit dans un fichier txt pour qu'après je puisse le réouvrir et sélectionné les infos qui m'intérèssent avec les balises.
je débute en pyhthon,
comment peut on stocker la source html d'une page web (avec urlopen) dans un fichier texte:
sock = urllib.request.urlopen("http://www.flightaware.com/ressources/airport/LFPG/weather")
htmlSource = sock.read
sock.close()
comment faire pour que le code source soit écrit dans un fichier txt pour qu'après je puisse le réouvrir et sélectionné les infos qui m'intérèssent avec les balises.
A voir également:
- Ecrire le résultat de la requète print dans un fichier .txt
- Comment réduire la taille d'un fichier - Guide
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Forcer la suppression d'un fichier - Guide
TypeError: must be str, not bytes
je suis sur python .3.3.2 et donc j'ai du utilisé urllib.request.urlopen, ci je comprend bien la fonction write n'écrit que en string mais pas en bytes.
Y a t-il une autre solution?
import urllib.request try: sock = urllib.request.urlopen("http://www.flightaware.com/ressources/airport/LFPG/weather") htmlSource = sock.read() sock.close() except urllib.error.HTTPError as e: htmlSource = e.read() with open("x.txt", "w+b") as f: f.write(htmlSource)Ici il faut prévoir si une erreur HTTP arrive comme la page visée est une page de 404. Et il faut préciser qu'on écrit le fichier en mode byte et pas string, le selecteur "b" dans le mode d'ouverture.