0
私はPythonとBeautifulSoupでいくつかのWebスクレイピングをしています。UTF-8ファイルから元の文字列を取り出す方法は?
body = soup.find("article")
tempvar = body.find()
fuu = open('tempfile', 'w')
tempvar = tempvar.encode('utf-8')
fuu.write(str(tempvar))
fuu.close()
fupa = open('tempfile')
joji = BeautifulSoup(fupa,'html.parser')
fupa.close()
print(joji)
tempvarは時々絵文字で、htmlのものが含まれていますでしょう。 ファイルの内容を後で実際のhtmlファイルで使用します。
<b>mencapai\xc2\xa0batas aksara 140</b>, tapi sudah tentu itu tidak termasuk semua <i>tweet </i>yang tak pernah dihantar kerana pengguna tidak boleh nak luahkan apa yang mereka mahukan. Selepas <b>mengaktifkan aksara 280</b> pada <b>sejumlah kecil akaun </b>yang bertuah, <b>Twitter </b>mengatakan <b>hanya 1%</b> sahaja <b>pengguna yang capai had aksara 280</b>. Tulis panjang\xc2\xb2 nak buat karangan ka. \xf0\x9f\x98\x9c<br/>\n<br/>\nIa juga jarang berlaku bagi pengguna untuk mencapai aksara 280, hanya <b>2%</b> dari <i>tweet </i><b>melebihi aksara 190</b>. <b>Had aksara tweet sebanyak 280 </b>juga <b>mendapat lebih <i>likes </i>dan <i>retweets </i></b>daripada had aksara <i>tweet </i>sebanyak 140. \xf0\x9f\x98\x8a<br/>\n<br/>
あなたはPythonとBeautifulSoupのどのバージョンを使用していますか?あなたの問題を再現することができません。 – Blender
python 3.6.3およびBS4 – nestalgia
Windowsを使用していますか? 'str(joji).encode( 'utf-8')'をファイルに書き込んで、それが正しくエンコードされているかどうか確認できますか? – Blender