Program学習Python

Pythonでファイル開いたら「UnicodeDecodeError: ‘cp932’ codec can’t decode byte 0x86 in position 77288: illegal multibyte sequence」エラー

Program学習

Windows環境のPythonでファイルを開こうとした際のエラーについての対応のメモとなります。

やろうとしたこと

beautifulsoapでローカルにあるhtmlファイルを読み込もうとした際のエラー

soup = BeautifulSoup(open('tmp.html'), "html.parser")

原因と対応

原因はCP932(Sjis)に変換できませんということ。

要はファイルの文字コードがあってないという事

対応としてはファイル読み込み時に文字コードを指定する

soup = BeautifulSoup(open('tmp.html', 'r', encoding='utf-8'), "html.parser")

Pythonのオススメ勉強方法

私がオススメするPython初心者向けの最初に購入すべき書籍は「シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全です。

シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全

この書籍は実際にシリコンバレーの一流エンジニアとして活躍している酒井潤さんが書いた本です。

内容も初心者から上級者までまとめられており、各Lessonも長すぎずに分かりやすくまとめられているので、初心者の方にもおすすめです。

シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全

今回は以上となります。

コメント