私は Python で Web クローラーを作成していますが、Web サイトから見出しを取得する必要があります。
見出しの 1 つを読むべきだった : そしてヒップもやってくる
しかし、その代わりにこう言った: そしてヒップもやってくる
ここで何がうまくいかないのですか?
私は Python で Web クローラーを作成していますが、Web サイトから見出しを取得する必要があります。
見出しの 1 つを読むべきだった : そしてヒップもやってくる
しかし、その代わりにこう言った: そしてヒップもやってくる
ここで何がうまくいかないのですか?
これはエンコーディング エラーです。Unicode 文字列の場合は、次のように修正する必要があります。
text.encode("windows-1252").decode("utf-8")
プレーン文字列の場合は、追加の手順が必要になります。
text.decode("utf-8").encode("windows-1252").decode("utf-8")
これらはどちらも Unicode 文字列を提供します。
ところで、このようなテキストがエンコーディングの問題によってどのように壊れているかを調べるには、 chardetを使用できます。
>>> import chardet
>>> chardet.detect(u"And the Hip’s coming, too")
{'confidence': 0.5, 'encoding': 'windows-1252'}
ソーステキストを適切にデコードする必要があります。ほとんどの場合、ソース テキストは ASCII ではなく UTF-8 形式です。
質問に対してコンテキストやコードを提供していないため、直接的な回答を提供することはできません。
Python で Unicode と文字エンコーディングがどのように行われるかを調べることをお勧めします。