ウェブサイトのソースコードをPython 3のテキストファイルにコピーするにはどうすればよいですか?HTMLソースコードをファイルに保存
EDIT: 私の問題を明確にするためには、ここで私が持っているものです。
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')
私はf.write()関数の次のエラーを取得する:
builtins.TypeError: must be str, not bytes
ここをクリックしてみましたか?:http://stackoverflow.com/questions/5512811/builtins-typeerror-must-be-str-not-bytes – Jack
驚くべきことに、実際に問題を解決した回答はありません.. pagetext'は文字列ではありません。実際にはバイトです。したがって、文字列に変換するには、ファイルにUTF-8でエンコードされた文字列を出力する 'f.write(pagetext.decode( 'utf-8'))'を使用する必要があります。 – Brandon
@Brandon私はあなたが言ったことを試してみたところ、UnicodeDecodeError: 'utf-8'コーデックは、位置8482のバイト0xa0をデコードできません:無効な開始バイト。私はちょうど文字通り 'str()'なしで答えをコピーし、 'f.write(pagetext)'の代わりに 'f.write(pagetext.decode( 'utf-8'))'を入れました。なぜこれが私のために働いているのかわかりません。もしあなたがPython 2を使っているのであれば、なぜでしょうか。 – Simon