零代码编程:用ChatGPT爬取网页数据遇到乱码怎么办?

大模型人工智能与算法

今天 用ChatGPT写了一 段代码,爬取中文网站数据,提示词如下:

写一段Python程序,爬取网页数据并保存到excel表格。

具体步骤:

打开网站https://www.zhenfund.com/Case/?id=3,解析源代码;

定位 id="ma_3" 的div元素;

定位其中所有的li元素;

定位li元素中的img 元素,提取alt值作为excel表格第1列;

定位li元素中的a元素,提取href值作为excel表格第2列;

保存excel表格到电脑d盘

注意:alt值里面有些是中文字符,可能在保存到excel表格时出现乱码问题。

程序运行很成功,但是结果里面有很多乱码,这些乱码在源代码都是中文。

     ![picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/abf2beceb2f64fe0a0e70fd2a201c2a0~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1745713113&x-signature=PvzrJcbYNkKzTk7D7P4%2BCuP1ogU%3D)

把这个问题向ChatGPT反馈,尝试了几种方式来修改,都没有作用。

picture.image

picture.image

picture.image

爬取出来的excel文件,用各种编码都无法正常显示。

那么,应该是源文件的问题了。

看来ChatGPT 不太懂这个问题,于是转而用搜索引擎搜索这个问题,最后找到一个靠谱答案:一般的网站的编码格式都是 UTF-8,所以当你系统的默认编码也是 UTF-8 时,也就是说,你的默认编码方式和目标网站的编码方式一致时,即使不明确设置编码方式,也不会出问题。但是爬取过程中没问题,但是用打开保存好的 csv 文件时出现乱码,这个其实就是源文件的编码方式和 Excel 的解码方式不一致导致的。这种问题解决也很简单,只要在代码中设置一下 encoding 即可。 这里建议一种方法,r.encoding = r.apparent_encoding ,这个可以自动推测目标网站的编码格式,省的你自己去一个个设置。

于是,根据这个情况让ChatGPT进行修改:

picture.image

随后运行成功,不再有任何乱码出现了:

picture.image

0
0
0
0
关于作者

文章

0

获赞

0

收藏

0

相关资源
云原生环境下的日志采集存储分析实践
云原生场景下,日志数据的规模和种类剧增,日志采集、加工、分析的多样性也大大增加。面对这些挑战,火山引擎基于超大规模下的 Kubernetes 日志实践孵化出了一套完整的日志采集、加工、查询、分析、消费的平台。本次主要分享了火山引擎云原生日志平台的相关实践。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论