用ChatGPT写一个数据采集程序

简介: 既然ChatGPT可以理解并生成代码,那么自然而然,它的作用不仅仅是帮助学习代码,同样也可以直接用在实际的软件开发当中。

入门教程、案例源码、学习资料、读者群

请访问:python666.cn


大家好,欢迎来到 Crossin的编程教室 !


上次我们讨论了ChatGPT在辅助编程学习上的一些用法:


如何用ChatGPT学Python


既然ChatGPT可以理解并生成代码,那么自然而然,它的作用不仅仅是帮助学习代码,同样也可以直接用在实际的软件开发当中。


对于网页上的数据采集及处理是Python的常见应用场景之一。我们来看下ChatGPT是不是也能完成这样的任务。


假设我们现在需要抓取并整理某个网页上的表格数据:


https://python666.cn/static/score.html



我们直接来问问ChatGPT,能不能给个抓取的代码:



ChatGPT给了我们一份代码,但很遗憾,把这个代码复制到编辑器中运行后,生成的Excel是空的。


简单调试后发现,原来是因为页面上的表头元素用的是<th>标签



而ChatGPT因为没有获知具体的页面代码信息,直接当做<td>标签来处理,所以没采集到表头信息。



这种情况下,我们可以手动对代码做一些修改。


或者,我们点击回答下方的“Regenerate response”,让它重新回答一次试试:



这次ChatGPT给出的代码比之前简洁:


import pandas as pd
# 读取网页上的表格
url = 'https://python666.cn/static/score.html'
tables = pd.read_html(url)
# 假设目标表格是第一个表格
table = tables[0]
# 将表格保存为Excel文件
output_file = 'table.xlsx'
table.to_excel(output_file, index=False)
print(f"表格已保存为 {output_file}")


运行后,成功得到了我们要的结果:



顺利拿到数据后,我们再进一步,让ChatGPT来对数据进行排序。当然,在排序前,我们需要告诉它关于表格内容的必要信息:



代码:


import pandas as pd
# 读取网页上的表格
url = 'https://python666.cn/static/score.html'
tables = pd.read_html(url)
# 假设目标表格是第一个表格
table = tables[0]
# 将缺失值替换为0
table.fillna(0, inplace=True)
# 计算每个学生的均分
table['均分'] = table.mean(axis=1)
# 按均分降序排序
table.sort_values(by='均分', ascending=False, inplace=True)
# 将表格保存为Excel文件
output_file = 'sorted_table.xlsx'
table.to_excel(output_file, index=False)
print(f"按均分排序后的表格已保存为 {output_file}")


这次,ChatGPT完美实现了我们提出的需求:



可以看出,虽然ChatGPT很强大,但并不能保证每次生成的代码都是完美,仍然可能需要引导它修正或人工干预。


但即便如此,它也已经算得上一个十分得力的编程助手,可以大大提高开发效率。尤其像数据处理这种场景,以往开发时常常需要查找各种函数及其参数的使用方法。现在有了ChatGPT,只要准确描述数据格式及需求,就可以立刻得到相应的处理代码,非常的方便。


我现在做数据分析已经快离不开它了。

相关文章
|
6月前
|
数据采集 数据处理 开发者
Python爬虫技术在数据收集与分析中的应用
随着互联网信息的爆炸式增长,数据收集与分析变得愈发重要。本文将介绍Python爬虫技术在实际项目中的应用,探讨其在数据收集、清洗和分析过程中的作用,以及如何利用Python相关库提高爬虫效率。
|
1月前
|
SQL 数据处理 HIVE
ChatGPT在综合数据处理中的应用(续篇)
ChatGPT在综合数据处理中的应用(续篇)
|
1月前
|
数据挖掘 数据处理
ChatGPT在综合数据处理中的应用(二)
ChatGPT在综合数据处理中的应用(二)
|
1月前
|
数据处理 Python
ChatGPT在综合数据处理中的应用(一)
ChatGPT在综合数据处理中的应用(一)
|
3月前
|
自然语言处理 数据挖掘 BI
ChatGPT 等相关大模型问题之将现有的数据分析平台与大模型结合如何解决
ChatGPT 等相关大模型问题之将现有的数据分析平台与大模型结合如何解决
|
4月前
|
计算机视觉 人工智能
人工智能问题之人脸识别团队决定使用LangChain来构建一个智能排查助手如何解决
人工智能问题之人脸识别团队决定使用LangChain来构建一个智能排查助手如何解决
33 1
|
6月前
|
数据采集 SQL 分布式计算
企业数据采集与分析(论文+源码)_kaic
企业数据采集与分析(论文+源码)_kaic
|
6月前
|
人工智能 IDE JavaScript
分享一个很好用的代码辅助AI工具CodeGeeX2
分享一个很好用的代码辅助AI工具CodeGeeX2
144 1
|
6月前
|
监控 JavaScript 数据库
OpenLLMetry:完美支持 LLM 应用的开源监测工具
【2月更文挑战第16天】OpenLLMetry:完美支持 LLM 应用的开源监测工具
465 1
OpenLLMetry:完美支持 LLM 应用的开源监测工具
|
6月前
|
人工智能 监控 数据可视化
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】0. 一文全览Tracing功能,让你的程序运行过程一目了然
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】0. 一文全览Tracing功能,让你的程序运行过程一目了然
206 0