【发布时间】:2014-01-09 21:18:48
【问题描述】:
我正在尝试制作一个随机 wiki 页面生成器,它会询问用户是否要访问随机 wiki 页面。但是,其中一些页面有重音字符,我想在运行代码时在 git bash 中显示它们。我正在使用 cmd 模块来允许用户输入。现在,我显示标题的方式是使用
r_site = requests.get("http://en.wikipedia.org/w/api.php?action=query&list=random&rnnamespace=0&rnlimit=10&format=json")
print(json.loads(r_site.text)["query"]["random"][0]["title"].encode("utf-8"))
有时它会起作用,但每当出现重音字符时,它就会显示为 25\xe2\x80\x9399。
有任何解决方法或替代方法吗?谢谢。
【问题讨论】:
-
您需要将环境设置为显示 unicode 字符,我认为 git bash 默认不会这样做。
-
使用
r_site.json()而不是json.loads(r_site.text)。删除.encode('utf-8') -
这两者有区别吗? -- 我刚试了一下,偶尔出现重音字符时出现charmap codec can't encoding character错误
标签: python git bash unicode non-ascii-characters