スクレイピングの際、酷い文字化けが発生したので下記の対応を行った。
response = urllib.request.urlopen(url)
html = response.read().decode(response.headers.get_content_charset(), errors='ignore')
parsed_html = BeautifulSoup(html, 'html.parser')

スクレイピングした結果が文字化けしてしまったときの解決策 - Qiita
スクレイピングには様々なやり方があると思います。 個人的にはurllibとBeautifulSoupを使うことが多いです。 response = urllib.request.urlopen(url) parsed_html = B...
しかしながら
LookupError: unknown encoding: windows-31j
というエラーで出力出来なかった。(”errors=’ignore'”も機能していない?)
結局、文字コードを直接指定した。
html = response.read().decode('cp932', errors='ignore')
“windows-31j”はIANAに登録された名称で、文字コードとしては”cp932(=Shift-JIS)”を指定するようです。