使用ChatGPT自动编写Python爬虫脚本

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

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

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

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

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

提问:

帮我用python写代码爬取这个网站的文章 https://zhuanlan.zhihu.com/p/595050104

ChatGPT:

把给到的代码放进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给出的代码可以执行,但它也提到由于爬取的网站会随时变更,也就是HTML会变动,所以代码可能需要调整才能正常工作。

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

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

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

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

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

提问:

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

ChatGPT:

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

我接着问:

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

ChatGPT:

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

于是我又问:

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

ChatGPT:

image.png

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

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

3.继续更多的测试

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

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

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

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

  • 18
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
12306抢票脚本是通过使用Python爬虫实现的。爬虫是一种程序,可以自动获取互联网上的信息。在使用Python实现抢票脚本时,一般需要引入相关的库,并编写爬虫代码来模拟用户的操作。具体步骤包括引入库、编写爬虫代码、设置城市编码和编写主程序。 市场上的许多火车票抢票软件都是基于爬虫技术实现的。虽然抢票软件看上去很神秘,但其实原理相当简单。通过使用Python编写抢票脚本,可以揭秘抢票的具体过程。 运行Python脚本命令"python trainticket.py 天津 南昌 2020-10-09"可以执行抢票脚本,并指定起始城市、目的城市和日期。 总结来说,12306抢票脚本是通过使用Python爬虫实现的,通过模拟用户的操作来抢购火车票。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Python爬虫实战之12306抢票](https://blog.csdn.net/weixin_42088036/article/details/108961779)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Python实现12306查票以及自动抢票](https://blog.csdn.net/weixin_45841831/article/details/129878368)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@Python大数据分析

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值