The*_*One 3 python unicode text beautifulsoup python-requests
我正在尝试创建一个包含Torah整个文本的txt单个文件.我在谷歌上找到的最好的来源是:http://www.mechon-mamre.org/i/t/t0101.htm.
这给了我章节,我必须连接并写出我的文件.
在运行以下脚本时使用urxvt(具有unicode支持的终端),我得到了胡言乱语:
import requests
from bs4 import BeautifulSoup
url = 'http://www.mechon-mamre.org/i/t/t0101.htm'
response = requests.get(url)
soup = BeautifulSoup(response.text)
paragraphs = soup.find_all('p')
print paragraphs[1]
Run Code Online (Sandbox Code Playgroud)
输出:
<p><b>à</b> <big>áÌÀ</big>øÅàùÑÄéú, áÌÈøÈà àÁìÉäÄéí, àÅú äÇùÌÑÈîÇéÄí, åÀàÅú äÈàÈøÆõ.
<a name="2"> </a>
<b>á</b> åÀäÈàÈøÆõ, äÈéÀúÈä úÉäåÌ åÈáÉäåÌ, åÀçÉùÑÆêÀ, òÇì-ôÌÀðÅé úÀäåÉí; åÀøåÌçÇ àÁìÉäÄéí, îÀøÇçÆôÆú òÇì-ôÌÀðÅé äÇîÌÈéÄí.
.....
Run Code Online (Sandbox Code Playgroud)
我试图强制输出默认使用unicode但我得到完全相同的输出:
print unicode(paragraphs[1])
Run Code Online (Sandbox Code Playgroud)
BeautfulSoup和Python-Requests都声称处理unicode,所以问题可能在于我的代码.如果我将希伯来文本从浏览器手工粘贴到urxvt,我会得到实际的希伯来语.因此终端不是问题.
服务器不报告内容的编码,并且requests(或者更确切地说chardet)错误地猜测内容编码.
改为使用原始字节:
>>> soup = BeautifulSoup(response.content)
>>> paragraphs = soup.find_all('p')
>>> print paragraphs[1]
<p><b>?</b> <big>???</big>????????, ?????? ????????, ??? ???????????, ????? ???????.
<a name="2"> </a>
<b>?</b> ?????????, ??????? ????? ???????, ?????????, ???-?????? ??????; ??????? ????????, ????????? ???-?????? ????????.
<a name="3"> </a>
<b>?</b> ????????? ????????, ????? ????; ???????-????.
<a name="4"> </a>
<b>?</b> ???????? ???????? ???-??????, ????-????; ??????????? ????????, ????? ?????? ?????? ?????????.
<a name="5"> </a>
<b>?</b> ?????????? ???????? ?????? ????, ??????????? ????? ???????; ???????-????? ???????-?????, ???? ?????. {?}<br/>
<a name="6"> </a>
<b>?</b> ????????? ????????, ????? ??????? ???????? ????????, ?????? ?????????, ????? ????? ???????.
<a name="7"> </a>
<b>?</b> ????????? ????????, ???-?????????, ??????????? ????? ???????? ?????? ???????? ?????????, ?????? ???????? ?????? ????? ?????????; ???????-???.
<a name="8"> </a>
<b>?</b> ?????????? ???????? ?????????, ????????; ???????-????? ???????-?????, ???? ??????. {?}<br/>
<a name="9"> </a>
<b>?</b> ????????? ????????, ???????? ???????? ???????? ??????????? ???-?????? ?????, ?????????, ????????????; ???????-???.
<a name="10"> </a>
<b>?</b> ?????????? ???????? ???????????? ?????, ??????????? ???????? ????? ???????; ???????? ????????, ????-????.
<a name="11"> </a>
<b>??</b> ????????? ????????, ????????? ??????? ??????? ?????? ????????? ?????, ??? ?????? ?????? ?????? ????????, ?????? ???????-??? ???-???????; ???????-???.
<a name="12"> </a>
<b>??</b> ????????? ??????? ??????? ?????? ????????? ?????, ??????????, ????? ??????-?????? ?????? ???????-???, ??????????; ???????? ????????, ????-????.
<a name="13"> </a>
<b>??</b> ???????-????? ???????-?????, ???? ??????????. {?}<br/>
<a name="14"> </a>
<b>??</b> ????????? ????????, ????? ??????? ?????????? ???????????, ???????????, ????? ??????? ?????? ??????????; ??????? ??????? ?????????????, ?????????? ?????????.
<a name="15"> </a>
<b>??</b> ??????? ?????????? ?????????? ???????????, ???????? ???-???????; ???????-???.
<a name="16"> </a>
<b>??</b> ????????? ????????, ???-?????? ?????????? ???????????: ???-????????? ????????, ???????????? ???????, ?????-????????? ???????? ???????????? ??????????, ????? ????????????.
<a name="17"> </a>
<b>??</b> ????????? ????? ????????, ?????????? ???????????, ????????, ???-???????.
<a name="18"> </a>
<b>??</b> ??????????, ???????? ????????????, ?????????????, ????? ?????? ?????? ?????????; ???????? ????????, ????-????.
<a name="19"> </a>
<b>??</b> ???????-????? ???????-?????, ???? ????????. {?}<br/>
<a name="20"> </a>
<b>?</b> ????????? ????????--?????????? ????????, ?????? ?????? ??????; ?????? ???????? ???-???????, ???-?????? ??????? ???????????.
<a name="21"> </a>
<b>??</b> ?????????? ????????, ???-???????????? ???????????; ????? ????-?????? ???????? ?????????? ?????? ???????? ???????? ??????????, ????? ????-???? ?????? ??????????, ???????? ????????, ????-????.
<a name="22"> </a>
<b>??</b> ?????????? ????? ????????, ??????: ?????? ???????, ????????? ???-???????? ???????????, ????????, ????? ????????.
<a name="23"> </a>
<b>??</b> ???????-????? ???????-?????, ???? ?????????. {?}<br/>
<a name="24"> </a>
<b>??</b> ????????? ????????, ??????? ??????? ?????? ?????? ?????????, ???????? ???????? ?????????-?????, ?????????; ???????-???.
<a name="25"> </a>
<b>??</b> ????????? ???????? ???-?????? ??????? ?????????, ?????-?????????? ?????????, ????? ????-?????? ?????????, ??????????; ???????? ????????, ????-????.
<a name="26"> </a>
<b>??</b> ????????? ????????, ???????? ????? ???????????? ?????????????; ?????????? ??????? ?????? ???????? ???????????, ???????????? ???????-???????, ???????-????????, ???????? ???-???????.
<a name="27"> </a>
<b>??</b> ?????????? ???????? ???-??????? ??????????, ???????? ???????? ?????? ?????: ????? ?????????, ?????? ?????.
<a name="28"> </a>
<b>??</b> ?????????? ?????, ????????, ????????? ????? ???????? ?????? ??????? ????????? ???-???????, ???????????; ??????? ???????? ??????, ???????? ???????????, ???????-??????, ?????????? ???-???????.
<a name="29"> </a>
<b>??</b> ????????? ????????, ?????? ???????? ????? ???-????-?????? ?????? ????? ?????? ???-?????? ???-???????, ?????-????-????? ??????-???? ?????-???, ?????? ?????: ????? ???????, ?????????.
<a name="30"> </a>
<b>?</b> ???????-?????? ??????? ???????-???? ??????????? ??????? ??????? ???-???????, ??????-???? ?????? ??????, ???-????-????? ??????, ?????????; ???????-???.
<a name="31"> </a>
<b>??</b> ???????? ???????? ???-????-?????? ??????, ????????-???? ?????; ???????-????? ???????-?????, ???? ???????????. {?}</p>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
461 次 |
| 最近记录: |