大家好,我是安果!
都知道最近 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:
这次就牛掰了,它重新用 Selenium 写了爬虫代码,并告诉我爬取动态网页需要模拟浏览器行为,因此得用 Selenium 技术
我没有运行去测试代码正确与否,但 ChatGPT 确实惊艳到我了,能够前后关联对话内容,并给出正确的解决方法
3.继续更多的测试
上面只是蜻蜓点水的玩玩,ChatGPT 就已经吸引到我,
我准备多花时间去测试 ChatGPT 应对各种爬虫的解决方案,以及它对bug 的修复能力
仅仅从写代码层面看,ChatGPT 已经可以媲美中高级程序员的水平了,而且它的知识范畴远超人类最厉害的程序员
ChatGPT 能够根据对话生成人想要的内容,这是 AI 巨大的突破,未来它的应用之广难以想象