ChatGPT 帮我自动编写 Python 爬虫脚本的详细过程

作者:Python数据开发 时间:2021-09-09 09:13:50 

都知道最近ChatGPT聊天机器人爆火,我也想方设法注册了账号,据说后面要收费了。

ChatGPT是一种基于大语言模型的生成式AI,换句话说它可以自动生成类似人类语言的文本,把梳理好的有逻辑的答案呈现在你面前,这完全不同于传统搜索工具。

ChatGPT不光可以回答人文、科学、情感等传统问题,还可以写代码、改bug,程序员可就急了,简直是在抢饭碗,所以网上出现各种ChatGPT让你失业的焦虑言论。

俗话说“百闻不如一见”,我试着让ChatGPT用Python去写爬虫脚本,看它到底行不行?

1、爬取知乎上的专栏文章

提问:

帮我用python写代码爬取网站

ChatGPT:

ChatGPT 帮我自动编写 Python 爬虫脚本的详细过程

把给到的代码放进PyCharm中跑一遍,发现没有报错,且打印出了内容。

import requests
from bs4 import BeautifulSoup

url = "https://zhuanlan.zhihu.com/p/595050104"
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")

title = soup.find("h1", class_="Post-Title").text.strip()
body = soup.find("div", class_="Post-RichText").text.strip()

print("Title:", title)
print("Body:", body)

ChatGPT 帮我自动编写 Python 爬虫脚本的详细过程

虽然说ChatGPT给出的代码可以执行,但它也提到由于爬取的网站会随时变更,也就是HTML会变动,所以代码可能需要调整才能正常工作。

凡是写过爬虫的同学应该都能理解,人工写的爬虫代码也没法一劳永逸,需要随时改。

这一点ChatGPT提示的很有道理。

后来我测试了medium、百家号上的文章,ChatGPT提供的代码形式几乎和上面一致,没法直接执行获取结果,需要微调后才能跑。

2. 爬取京东某商品的评论

为了给ChatGPT增加难度,我试着让它去爬取某电商网站的用户评论

提问:

请用python写代码爬取这个京东商品的所有用户评论 https://item.jd.com/13652780.html

ChatGPT:

ChatGPT 帮我自动编写 Python 爬虫脚本的详细过程

可能这个网页是动态页面,ChatGPT提供的方法并不能爬取评论。

我接着问:

爬取的结果是空值怎么办?

ChatGPT:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nnDP8sph-1676473447460)(null)]

ChatGPT提供了3种可能存在的原因,但并没有帮我修改代码。

于是我又问:

还是空值 请帮我重新写代码爬取

ChatGPT:

ChatGPT 帮我自动编写 Python 爬虫脚本的详细过程

这次就牛掰了,它重新用Selenium写了爬虫代码,并告诉我爬取 * 页需要模拟浏览器行为,因此得用selenium技术。

我没有运行去测试代码正确与否,但ChatGPT确实惊艳到我了,能够前后关联对话内容,并给出正确的解决方法。

3.继续更多的测试

上面只是蜻蜓点水的玩玩,ChatGPT就已经吸引到我,

我准备多花时间去测试ChatGPT应对各种爬虫的解决方案,以及它对bug的修复能力。

仅仅从写代码层面看,ChatGPT已经可以媲美中高级程序员的水平了,而且它的知识范畴远超人类最厉害的程序员

ChatGPT能够根据对话生成人想要的内容,这是AI巨大的突破,未来它的应用之广难以想象。

来源:https://blog.csdn.net/m0_59596937/article/details/129052428

标签:ChatGPT,Python,爬虫
0
投稿

猜你喜欢

  • python os用法总结

    2021-03-16 19:30:16
  • 表单name与id的区别和相似之处

    2007-12-13 12:55:00
  • PHP lcfirst()函数定义与用法

    2023-06-05 01:25:20
  • python各种语言间时间的转化实现代码

    2022-06-27 14:54:28
  • 详解OpenCV中直方图,掩膜和直方图均衡化的实现

    2022-10-30 12:03:33
  • 在Pycharm中项目解释器与环境变量的设置方法

    2023-12-31 02:49:53
  • Python实现求一个集合所有子集的示例

    2022-09-01 20:56:51
  • JavaScript中常见的几种获取元素的方式

    2023-07-13 07:46:12
  • 如何利用JavaScript读取excel文件并绘制echarts图形

    2023-08-27 07:51:16
  • 基于keras输出中间层结果的2种实现方式

    2023-10-11 16:05:49
  • php中$_GET与$_POST过滤sql注入的方法

    2023-07-13 14:38:12
  • 使用Python第三方库pygame写个贪吃蛇小游戏

    2021-05-19 11:08:37
  • 在python list中筛选包含字符的字段方式

    2023-12-17 17:02:06
  • Python中的配对函数zip()解读

    2021-04-14 20:54:33
  • go如何利用orm简单实现接口分布式锁

    2023-06-17 16:55:04
  • Python制作一个随机抽奖小工具的实现

    2022-10-22 03:53:29
  • python使用PyGame绘制图像并保存为图片文件的方法

    2023-05-13 16:17:03
  • Access数据库导入Mysql的方法之一

    2023-11-17 12:41:41
  • python实现udp传输图片功能

    2022-09-24 16:35:01
  • Python如何重新加载模块

    2022-09-08 21:31:56
  • asp之家 网络编程 m.aspxhome.com