scrapy爬取的数据, iterm2 中文显示unicode乱码

在用scrapy爬数据,中文显示如下。

2017-06-15 13:06:21 [scrapy] DEBUG: Scraped from <200 https://www.amazon.cn/s?ie=UTF8&page=2&rh=n%3A664805051>
{'book_id': u'B00KYLLBK8',
 'name': [u'\u6210\u957f,\u8bf7\u5e26\u4e0a\u8fd9\u5c01\u4fe1:\u4ed6\u4eec\u81f4\u5b69\u5b50']}

但是我用python输出确实没有问题的。这是iterm2的问题吗?我的iterm2编码格式是utf-8
求指教。

➜   python3
Python 3.6.0
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)] on darwin
>>> s = u'\u9f99\u5e94\u53f0\u4eba\u751f\u4e09\u4e66:\u5b69\u5b50\u4f60\u6162\u6162\u6765+\u4eb2\u7231\u7684\u5b89\u5fb7\u70c8+\u76ee\u9001\u7b49(\u5957\u88c5\u51716\u518c)'
>>> s
'龙应台人生三书:孩子你慢慢来+亲爱的安德烈+目送等(套装共6册)'
阅读 4.6k
2 个回答

u...等等內容看起來不是亂碼,是正確的。

data = {'book_id': u'B00KYLLBK8',
 'name': [u'\u6210\u957f,\u8bf7\u5e26\u4e0a\u8fd9\u5c01\u4fe1:\u4ed6\u4eec\u81f4\u5b69\u5b50']}
print (data['name'])

輸出結果:

['成长,请带上这封信:他们致孩子']

u'' 的内容是Unicode编码的。内部默认用的是Unicode编码,当你输出的时候就会自动转换为汉字的形式
就像下面的一样
clipboard.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进