【发布时间】:2011-11-05 08:52:29
【问题描述】:
我正在使用 BeautifulSoup 用 Python 编写一个爬虫,一切都很顺利,直到我遇到了这个网站:
我正在使用请求库获取内容:
r = requests.get('http://www.elnorte.ec/')
content = r.content
如果我此时打印内容变量,所有西班牙特殊字符似乎都可以正常工作。但是,一旦我尝试将 content 变量提供给 BeautifulSoup,一切都会变得一团糟:
soup = BeautifulSoup(content)
print(soup)
...
<a class="blogCalendarToday" href="/component/blog_calendar/?year=2011&month=08&day=27&modid=203" title="1009 artÃculos en este dÃa">
...
它显然把所有的西班牙特殊字符(口音之类的)都弄乱了。我试过做 content.decode('utf-8'), content.decode('latin-1'),还尝试将 fromEncoding 参数设置为 BeautifulSoup,将其设置为 fromEncoding='utf-8' 和 fromEncoding ='latin-1',但还是没有骰子。
任何指针将不胜感激。
【问题讨论】:
标签: python unicode utf-8 beautifulsoup