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二分法查找算法实现方法【递归与非递归】

    2023-04-17 08:13:47
  • Python实现画图软件功能方法详解

    2023-08-29 06:35:49
  • vue组件定义,全局、局部组件,配合模板及动态组件功能示例

    2024-05-05 09:09:59
  • 利用ctypes提高Python的执行速度

    2023-11-04 22:33:55
  • Python服务器创建虚拟环境跑代码

    2021-02-15 20:17:49
  • 解决phpmyadmin中缺少mysqli扩展问题的方法

    2023-07-13 02:30:12
  • python 使用装饰器并记录log的示例代码

    2022-02-17 02:15:03
  • MYSQL存储过程即常用逻辑知识点总结

    2024-01-21 07:36:36
  • Python 获取numpy.array索引值的实例

    2021-01-19 21:36:57
  • 对Python 2.7 pandas 中的read_excel详解

    2023-09-10 04:14:49
  • 微信小程序实现图片上传功能实例(前端+PHP后端)

    2023-11-05 14:19:27
  • mysql创建表设置表主键id从1开始自增的解决方案

    2024-01-18 13:52:53
  • mysql sql_mode="" 的作用说明

    2024-01-25 22:58:24
  • numpy创建单位矩阵和对角矩阵的实例

    2023-08-05 10:25:44
  • Python功能键的读取方法

    2023-09-26 23:12:24
  • 对acronym、abbr标签的理解

    2008-05-29 13:03:00
  • es6函数之严格模式用法实例分析

    2023-08-09 06:15:40
  • Python json 错误xx is not JSON serializable解决办法

    2021-06-25 21:58:05
  • sqlserver中去除字符串中连续的分隔符的sql语句

    2024-01-24 02:45:51
  • django有外键关系的两张表如何相互查找

    2023-10-19 06:08:45
  • asp之家 网络编程 m.aspxhome.com