爬虫扒取网页信息时‘gbk‘ codec can‘t encode character ‘\u266a和\xa0的问题

        今天跟着http://python.jobbole.com/89091/学习了一下爬虫扒取网易云音乐的歌单,但是发现个问题就是,用csv储存自己扒取的信息时,总会弹出'gbk' codec can't encode character ‘\xa0‘的错误,搜索得到这个网页https://blog.csdn.net/wangbowj123/article/details/78061618发现\xa0是不间断空白符   采取了split和join的方法,以为没有关系了,发现弹出'gbk' codec can't encode character '\u266a,没办法,才考虑编码的问题。

        gbk的话应该是win7系统默认,excel写入的时候的编码方式。于是我在想是不是扒取的信息中有些gbk是不包含的,因为debug时候发现是在一个有好多符号的歌单名字时报错的,于是我就改成了这样

csv_file=open("playlist.csv","w",encoding='utf-8',newline='')

        本来跑了一遍程序没报错,以为解决了,但是一打开csv发现全是不认识的乱码汉字,搜了一下看到有人说把获取的字符串先decode称Unicode在encode成gbk,但是如果utf-8能完全转到gbk,为什么不直接在open时候直接恩codeing改成gbk呢,所以这么做肯定不对。那要不更改个编码?那就弄个升级版,我试了一下这个

 

csv_file=open("playlist.csv","w",encoding='gb18030',newline='')

        发现成功了,这是怎么回事呢?查看了一下发现excel打开是出现中文乱码是因为excel能够正确识别用gb2312、gbk、gb18030或utf_8 with BOM 编码的中文,如果是utf_8 no BOM编码的中文文件,excel打开会乱码。所以不光是gb18030,utf_8_sig也可以解决。

最后求关注,求点赞,欢迎大家关注我的公众号
在这里插入图片描述
记录所学所用,包括但不限于遥感、地信、气象、生态环境,机器学习知识,相关文献阅读,编程代码实现。偶尔荒腔走板的聊聊其他。欢迎不同领域的朋友们加入进来,多多交流。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值