Wie kann ich den Quellcode einer Website in eine Textdatei in Python 3 kopieren?HTML-Quellcode in Datei speichern
EDIT: mein Problem zu klären, hier ist was ich habe:
import urllib.request
def extractHTML(url):
f = open('temphtml.txt', 'w')
page = urllib.request.urlopen(url)
pagetext = page.read()
f.write(pagetext)
f.close()
extractHTML('http:www.google.com')
bekomme ich folgende Fehler für die f.write() Funktion:
builtins.TypeError: must be str, not bytes
Haben Sie versucht, hier zu suchen ?: http://stackoverflow.com/questions/5512811/builtins-typeerror-must-be-str-not-bytes – Jack
Überraschenderweise hat keine der Antworten (außer einem) das Problem angesprochen .. 'pagetext' ist KEINE Zeichenfolge. Es ist tatsächlich Bytes. Um es in einen String zu konvertieren, müssen Sie 'f.write (pagetext.decode ('utf-8'))' verwenden, was eine UTF-8-codierte Zeichenfolge für die Datei bedeutet. – Brandon
@Brandon Ich habe versucht, was Sie sagten, und bekam einen Fehler 'UnicodeDecodeError:' utf-8 'Codec kann Byte 0xa0 in Position 8482 nicht dekodieren: ungültiges Startbyte'. Ich habe meine Antwort einfach ohne die 'str()' kopiert und 'f.write (pagetext.decode ('utf-8'))' an die Stelle von 'f.write (pagetext)' gesetzt. Irgendeine Idee, warum das für mich nicht funktioniert. Wenn Sie Python 2 verwenden, könnte das der Grund sein, warum – Simon