UnicodeEncodeError- 'gbk' codec can't encode character '-xa9' in position 3738- illegal......

mac2022-06-30  24

今天做课堂作业——下载一个网页的HTML源代码到本地,遇到一个gbk编码问题。在本地可以看到代码创建的新文本,但是啥内容也没有,在百度看了很多博客,最终完美解决问题。

修改前

import requests res = requests.get('https://localprod.pandateacher.com/python-manuscript/crawler-html/spider-men5.0.html') book = res.text print(book) p = open('E:\\Mypy\\练习作品\\这个书苑不太冷.txt','a+') p.write(book) p.close()

解决方案

p = open('E:\\Mypy\\练习作品\\这个书苑不太冷.txt','a+')

修改为

p = open('E:\\Mypy\\练习作品\\这个书苑不太冷.txt','a+',encoding='utf-8')

运行效果图如下


总结

由于在windows中,新建的文本文件的默认编码是gbk,那么在创建文本时规定编码格式为utf-8就行了,否则将采用默认编码。

最新回复(0)