楼主:
ResolaQQ (ResolaQQ)
2015-12-13 16:18:17>>> wb = u'\xe5\x8d\x97\xe4\xba\xac\xe5\xbe\xa9\xe8\x88\x88'
>>> b = wb.encode('latin-1')
>>> u = b.decode('utf-8')
>>> print(u)
南京复兴
※ 引述《atedps (苦哈哈)》之铭言:
: 大家好,键盘小弟最近因为研究需求需要北捷各站点间通勤时间的资料,
: 而台北市政府的Open Data好像也没有找到这方面的资料。因此
: 想说自己写了一只爬虫去抓这些资料,但抓下来的资料在中文
: 站名的部分总会变成乱码,我大概知道这是Encoding或Decoding
: 相关的问题,但是碍于自己这方面知识没有很充足,所以昨天
: Google了很久还是找不到答案,因此决定来问问版上的大大们。
: 我是使用最基本的方式用request抓下html档案后再用BeautifulSoup去分析,
: 但取出来的中文text会变成一个unicode的type的物件
: 如u'\xe5\x8d\x97\xe4\xba\xac\xe5\xbe\xa9\xe8\x88\x88'
: 但如果我手动把这个物件引号部分的资料复制出来当作一个字串再用utf8去decode的话就
: 可以顺利跑出中文字。如:
: tex = '\xe5\x8d\x97\xe4\xba\xac\xe5\xbe\xa9\xe8\x88\x88'
: msg = tex.decode('utf8')
: print msg
: 南京复兴
: 因此我想问的是,有没有什么方式是可以把我原本unicode物件里面引号的部分
: 取出来的,因为我也不可能每次都用手动去复制贴上QQ。或者是有没有办法
: 让我一开始抓下来的中文字不要变成unicode物件,而直接是一个单纯字串。
: 我试过str()的方式,里面的文字会变成另外一个编码,造成decode出来跟原本的
: 文字会不一样
: 先感谢各位了 >_<
作者:
uranusjr (â†é€™äººæ˜¯è¶…級笨蛋)
2015-12-15 13:58:00latin-1 在实务上是万用解码, 只要是 8 bits 一组没有解不开的东西, 所以他不是用猜的, 而是技巧 :)