下面是我的代码:
import re
import mechanize
br = mechanize.Browser()
br.open("http://www.douban.com/")
print br.title()我访问的是一个中文网站,但返回的标题却是奇怪的字符,
我如何解决这个问题?
发布于 2013-07-11 10:50:56
这是因为字符集问题。例如,在Python 3.x中:
>>> print("豆瓣".encode("utf8").decode('gbk'))
璞嗙摚换句话说,serive中的内容"豆瓣“是用字符集"utf8”编码的。但是您的客户端尝试将其显示为字符集"gbk“。要解决这个问题,需要在这两个不同的字符集之间传输内容,比如br.title().encode('gbk').decode("utf8")
发布于 2013-07-10 19:57:02
如果你只是做br.title(),它会给你特殊字符的unicode字符串。
print尝试通过编码Unicode字符串来显示非ASCII码字符。
https://stackoverflow.com/questions/17569733
复制相似问题