首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python机械化:编码导致陌生字符

Python机械化:编码导致陌生字符
EN

Stack Overflow用户
提问于 2013-07-10 19:41:01
回答 2查看 516关注 0票数 0

下面是我的代码:

代码语言:javascript
复制
import re
import mechanize

br = mechanize.Browser()
br.open("http://www.douban.com/")
print br.title()

我访问的是一个中文网站,但返回的标题却是奇怪的字符,

我如何解决这个问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-11 10:50:56

这是因为字符集问题。例如,在Python 3.x中:

代码语言:javascript
复制
>>> print("豆瓣".encode("utf8").decode('gbk'))
璞嗙摚

换句话说,serive中的内容"豆瓣“是用字符集"utf8”编码的。但是您的客户端尝试将其显示为字符集"gbk“。要解决这个问题,需要在这两个不同的字符集之间传输内容,比如br.title().encode('gbk').decode("utf8")

票数 0
EN

Stack Overflow用户

发布于 2013-07-10 19:57:02

如果你只是做br.title(),它会给你特殊字符的unicode字符串。

print尝试通过编码Unicode字符串来显示非ASCII码字符。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17569733

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档