您的位置:首页 > 编程语言 > Python开发

关于Python爬虫自己学习进步中的小插曲。。。编码问题

2018-02-11 22:43 627 查看
在刚学Python时我估计谁也会有一些编码问题。。。。。。于是我就碰上了,恩。。。果然厉害,其实没多大点事,但就是绕不出来,查各种问题解答。。。。。。
我是想将所爬到的页面下载下来,保存到本地,再做解析工作,但就这保存到本地出现了差错:



在执行到f.write(html)时,出现了问题:
UnicodeEncodeError: 'gbk' codec can't encode character '\xba' in position 89443:

 illegal multibyte sequence
html是长这个样子(return的返回值便是html):



后来在网上找了好多资料,整理一些在下面:
首先,要搞清到底谁是默认编码(Python的默认编码是谁,系统的编码是谁,而所爬页面的编码是谁)
看这里
而我的错误一开始就一个,一直是他,从未超越:
UnicodeEncodeError: 'gbk' codec can't encode character '\xba' in position 89443:

 illegal multibyte sequence
我看了半天,又查了好一会儿,终于找见一个问题和我差不多的答案:要看看“\xba”是什么



过分了。。。。。。竟然是个“。”
我按照这种方法改了改,但还是没解决,而且出现了新的错误:TypeError: a bytes-like object is required, not 'str'
好不容易改出来了,结果发现错误变回去了:
UnicodeEncodeError: 'gbk' codec can't encode character '\u3e14' in position 1223

74: illegal multibyte sequence
看了看这“\u3e14”是什么:



好,我服了。。。
之后就这样浑浑噩噩的瞎看看网上说法,没想到啊没想到,让我找见一个知乎帖子,里面的帖子写了:
伸腿瞪眼丸,快来一粒

里面的一个评论救了我:



我只是把代码截图了,可以去上面的链解里找见完整的回答(原谅我的懒)。
恩,最后我的问题解决了。。。当然,也不是完全解决掉,还是有一些编码的知识没搞懂,欢迎留言,能让我多学习学习,感激不尽!
总结来说,关于这方面的帖子和博客真不少,看来是门厉害的学问,小问题也难住不少人,要是能把这些学好,也很厉害哦!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  爬虫