2
我想使用BeatifulSoup從網站獲取表格中的數據,但它無法正確抓住中文字符。 這是我的代碼:Python中BeautifulSoup的中文字符編碼錯誤?
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import urllib2
from bs4 import BeautifulSoup
html=urllib2.urlopen("http://www.515fa.com/che_1978.html").read()
soup=BeautifulSoup(html,from_encoding="UTF-8")
print soup.prettify()
而且中國的字符顯示是這樣的:
<td align="center" bgcolor="#FFFFFF" u1:str="" width="173">
ćé¸</td>
<td align="center" bgcolor="#FFFFFF" u1:str="" width="149">
ä¸ćľˇĺ¤§äź</td>
<td align="center" bgcolor="#FFFFFF" u1:str="" width="126">
大äź</td>
我真的不知道「ä¸ćľĺ¤§äź」是什麼。我嘗試將編碼「utf-8」更改爲「gb18030」,但它不起作用。 我怎樣才能得到正確的漢字?謝謝!
你在輸出這個HTML *到*?瀏覽器?控制檯? – deceze
@desceze MacBook上的Terminal.app。 – Shawn
終端輸出使用的編碼是什麼?你可能需要做一些像'print soup.prettify()。encode('gb18030')'之類的東西。 – Bakuriu