Python(Chrome)编码问题: 'gbk' codec can't encode character u'\u2027'

发布于 2022-09-05 14:46:40 字数 1906 浏览 36 评论 0

UnicodeEncodeError: 'gbk' codec can't encode character u'u2027' in position 230 39: illegal multibyte sequence
完整代码:

In [1]: import urllib2

In [2]: import re

In [3]: web = urllib2.urlopen('https://movie.douban.com/'>
   
In [4]: web = urllib2.urlopen('https://movie.douban.com/')

In [5]: neirong=web.read()

In [6]: jiangrenhua=neirong.decode('UTF-8')

In [7]: print jiangrenhua

image.png!thumbnail

根据网上的办法:
1.jiangrenhua=neirong.decode('UTF-8')改为jiangrenhua=neirong.decode('UTF-8','ignore')

2、更改python的默认编码为utf-8
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
输入sys.getdefaultencoding()查看
编码已经改了
但是继续输出print jiangrenhua
依然出现上面的编码错误,请问怎么解决
image.png!thumbnail

如下:
image.png!thumbnail

试试在第一行加上:# coding: utf-8
依然不行
image.png!thumbnail

只好用python3的ipython试试:
代码如下:

In [1]: import urllib.request

In [2]: import re

In [3]: web = urllib.request.urlopen('https://movie.douban.com/'>
   

In [5]: neirong=web.read()

In [6]: jiangrenhua=neirong.decode('UTF-8')

In [7]: print (jiangrenhua)

最后显示地抓取内容如下:
image.png!thumbnail

最后还是想问,上面的问题使用python2.7可以怎么解决,求教求教求教???????谢谢谢谢
我的第一个爬虫:。。。。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

苄①跕圉湢 2022-09-12 14:46:40

这个错误貌似是控制台输出字符串的时候,编码错了。你没必要再控制台把这个变量print出来的,一定要看的话你可以考虑写到文件里。

另外,我最新的win10快速预览版,Python 2.7.13,IPython 5.4.1 没有你的问题。
建议你早日转投python3

图片描述

淡写薰衣草的香 2022-09-12 14:46:40

需要厘清的几个基本概念:

>>> help(print)
Help on built-in function print in module builtins:

print(...) # print的默认输出端是 sys.stdout
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
>>> import sys
>>> sys.getdefaultencoding() # python 读写 .py文件 的默认编码
'utf-8' # py2 默认是 ascii
>>> sys.stdout.encoding # 在win中是 cmd console 的编码
'cp936'  # 也就是 gbk

所以,解决办法是:python3,它就是为了化解py2的乱码问题而改进的。
参考:python 爬取网页编码问题

夏日落 2022-09-12 14:46:40

https://www.zouyesheng.com/by...

想“快速”解决问题,就不用点了。

感情洁癖 2022-09-12 14:46:40

decode("gbk")

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文