avatarShuyi Wang

Free AI web copilot to create summaries, insights and extended knowledge, download it at here

3682

Abstract

1><p id="2b63">接下来咱们来试试获取网页中的全部图像。我把相同的网址发送过去,请求它抓取其中的图像。</p><figure id="ec87"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*Kk9q_mMB5S4jZGUd.jpg"><figcaption></figcaption></figure><p id="6697">这次它一共找到了 12 张图片,但在对话界面里<b>都无法正常显示</b></p><figure id="4cac"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*NHJHGaznCheaI3jo.jpg"><figcaption></figcaption></figure><p id="f740">起初我觉得很失望,但马上意识到它已经成功获取了图片链接。我把链接复制到了 Visual Studio Code 里面,你可以看看它抓取到的内容。</p><figure id="cc39"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*7k0E6HBD18P3gQzQ.jpg"><figcaption></figcaption></figure><p id="250e">链接有了,如何正常显示呢?简单,咱们把所有内容复制到 Markdown 编辑器 Typora。你可以看到,所有老师的照片都依次展现出来了,很完美。</p><h1 id="2086">链接</h1><p id="9cd2">最后我要求Scraper GPT提取页面中的<b>所有链接</b></p><figure id="0db9"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*C1TNpzrl0cbJ1IQ4.jpg"><figcaption></figcaption></figure><p id="4939">从结果可以看出,Scraper GPT 找到了导航栏、学院简介等页面链接,以及三位老师的个人主页链接。</p><figure id="fdbe"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*2fLdfzD7oNcht1hX.jpg"><figcaption></figcaption></figure><p id="d4cd">我觉得这个结果并不完整。不过仔细一看 Scraper GPT 自己已经表示,这「只是链接的一部分」。如果我需要某个特定区域的链接,尽管告诉它。</p><p id="e792">那我就不客气了,指明它需要给我显示所有「教师」部分的链接。</p><figure id="23f6"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*KT201tMRDElI7q5s.jpg"><figcaption></figcaption></figure><p id="e86e">于是全系所有 9 个老师的页面链接就都出现了。</p><figure id="0846"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*FVT60XnfN6-7TFlO.jpg"><figcaption></figcaption></figure><p id="24d0">我把抓取到的链接内容复制到编辑器中,你可以清楚地看到每个链接。</p><figure id="e87b"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*TnWSSL4KrRd1UIOv.jpg"><figcaption></figcaption></figure><p id="39dd">当然了,你一般不会满足于只获得某个网页上的内容,而是希望「顺藤摸瓜」。没问题,链接在手,你可以进一步要求Scraper GPT访问这些链接,<b>抓取二级页面</b>的内容。</p><h1 id="01cb">深入</h1><p id="4e79">这里我以 <a href="https://glxy.tjnu.edu.cn/info/1076/2823.htm">翟羽佳老师的个人主页举例</a></p><figure id="666e"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*oo_ic2mX5q0l7g4V.jpg"><figcaption></figcaption></figure><p id="5fe2">进入页面后,你可以看到翟老师的个人介绍、学术成果、研究课题等丰富信息。我用提示词让 Scraper GPT 把页面文本提取出来。</p><figure id="c671"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*C7yG9P8xnLXw0cdC.jpg"><figcaption></figcaption></figure><p id="d953">Scraper GPT 把翟老师的职称、联系方式、研究领域等内容都抓取到了。</p><figure id="af86"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*bKPsBrZm2CcIym09.jpg"><figcaption></figcaption></figure><p id="2d7a">更进一步还抓取了翟老师的教育背景、工作经历、研究生指导等。</p><figure id="4364"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*hbaEsfMF3Gz4p-FO.jpg"><figcaption></figcaption></figure><p id="0ad4">在翟老师的个人主页上,这些信息位于默认页面底部。</p><figure id="e9a6"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*ZrvSVYJjXlot0nIi.jpg"><figcaption></figcaption></figure><p id="1552">但对于那些需要点击展开才能看到的内容,比如学术成果、研究课题、讲授课程等,Scraper GPT 则没能捕捉到具体内容。</p><figure id="55a6"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*ijvW5pREi9NsVHXa.jpg"><figcaption></figcaption></figure><p id="0b42">我要求 Scraper GPT 抓取学术成果这个部分。</p><figure id="7d77"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*U5ENXBOppxDlC2Me.jpg"><figcaption></figcaption></figure><p id="4d26">结果 Scraper GPT 表示,无可奈何。</p><figure id="ce2e"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*G6EheenFGKR8HWsf.jpg"><figcaption></figcaption></figure><p id="f935">翻译过来就是:</p><blockquote id="ec18"><p><i>之前提供的内容没有具体说明翟羽佳老师的「学术成果」部分的详细信息。看来这一部分的具体细节没有包含在抓取的文本中。这可能是由于网站内容的布局或动态加载方式造成的,单次抓取可能无法准确捕捉某些特定部分的详细信息。</i></p></blockquote><blockq

Options

uote id="3d37"><p><i>如果您需要这一部分的详细信息,我建议您直接访问该网页。如果还有其他我可以协助您的地方,请告诉我!</i></p></blockquote><p id="5796">我自己手动查找到翟老师学术成果第一条的 xpath 链接。</p><figure id="e495"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*roT1MFKJYK66zM5w.jpg"><figcaption></figcaption></figure><p id="ee80">然后我把这个 xpath 地址扔给了 Scraper GPT 。但是它还是告诉我,这些它处理不了。</p><figure id="1aa9"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*U_KfCkKHtqS_jSJ2.jpg"><figcaption></figcaption></figure><p id="45bd">翻译过来,就是:</p><blockquote id="e433"><p><i>我无法直接执行或解释 XPath 查询,也无法像浏览器或支持 JavaScript 的专用网页抓取工具那样与网页进行交互。我的能力集中在处理页面由服务器提供的静态内容中的文本、链接或图像,而不是在客户端脚本运行之前。</i></p></blockquote><blockquote id="9394"><p><i>如果有 JavaScript 生成的内容或信息是动态加载的,我可能无法直接通过简单的抓取访问到它。对于动态加载的内容或需要交互或特定查询 (如 XPath) 的部分,我建议使用专门设计用于动态网页抓取的工具,如 Selenium 或 Puppeteer,它们可以像浏览器一样与网页的 DOM 进行交互。</i></p></blockquote><blockquote id="9e08"><p><i>但是,如果您需要的信息可以通过网页的静态 HTML 访问,请随时提供网址并描述您感兴趣的信息,我会尽力帮助您!</i></p></blockquote><p id="e60a">这样看来,如果你希望抓取动态网页内容,恐怕目前 Scraper GPT 无能为力,或许你还真的无法摆脱编程的必要步骤。</p><h1 id="ff99">小结</h1><p id="0aaa">通过咱们的演示你可以看出,这款名叫 Scraper 的 GPT 工具非常方便好用。文本、图片、链接这些信息类型,Scrapper GPT都可以根据你提供的链接轻松获取。因为有了链接,你还可以进一步抓取二级页面的信息。重要的是,<b>整个过程完全不需要编程</b></p><p id="5263">当然Scraper GPT也有局限性,就是<b>无法准确处理动态网页的内容</b>。对于这些高阶操作,你目前可能还是需要借助 Selenium 等工具,通过编程来实现。但是我相信,随着 AI 能力的进一步提升,以及应用集成度的改进,这些强烈的用户需求,应该在不久后就有免费便捷的工具可以满足了。生活在这样一个人工智能快速进展的时代,真的很容易激动啊。</p><p id="d9b8">如果你觉得本文有用,请<b>点鼓掌按钮</b></p><p id="266a">如果本文可能对你的朋友有帮助,请<b>转发</b>给他们。</p><p id="ab68"><a href="https://wshuyi.medium.com/">欢迎<b>关注</b>我的专栏</a>,以便及时收到后续的更新内容。</p><p id="c251">若要收看视频内容,<a href="https://www.youtube.com/@wshuyi">请订阅我的 Youtube 视频频道</a></p><p id="b421">我的 Twitter: <a href="https://twitter.com/wshuyi">@wshuyi</a></p><p id="bfc1">欢迎订阅<a href="https://wangshuyi.substack.com/">我的 Substack 付费专栏</a>,每月更新不少于3篇文章。目前价格优惠。</p><p id="45af">如果有问题咨询,或者希望加入社群和热爱钻研的小伙伴们一起讨论,<b>订阅知识星球</b>吧。不仅包括 Substack 的推送内容,还可以自由发帖与提问。之前已经积累下的帖子和问答,就有数百篇。足够你好好翻一阵子。</p><figure id="4e1f"><img src="https://cdn-images-1.readmedium.com/v2/resize:fit:800/0*Sb240K-vpopjfPGC.jpg"><figcaption></figcaption></figure> <figure id="5321"> <div> <div> <img class="ratio" src="http://placehold.it/16x9"> <iframe class="" src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FanHrSo_y75k%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DanHrSo_y75k&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FanHrSo_y75k%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" allowfullscreen="" frameborder="0" height="480" width="640"> </div> </div> </figure></iframe></div></div></figure><h1 id="a82e">延伸阅读</h1><ul><li><a href="https://mp.weixin.qq.com/s/nJZkaSb4RQoHGgFsvnpUJQ">如何用 ChatGPT 的 Advanced Data Analysis 帮你采集数据?</a></li><li><a href="https://mp.weixin.qq.com/s/DrdZ8NAms7i9spjArPWmiw">如何不编程,采集网站评论信息?(视频教程)</a></li><li><a href="https://wshuyi.medium.com/%E5%A6%82%E4%BD%95%E7%94%A8-python-%E7%88%AC%E6%95%B0%E6%8D%AE-%E4%B8%80-%E7%BD%91%E9%A1%B5%E6%8A%93%E5%8F%96-5424e6c72d40">如何用 Python 爬数据?(一)网页抓取</a></li><li><a href="https://wshuyi.medium.com/%E5%A6%82%E4%BD%95%E7%94%A8-chatgpt-%E5%B8%AE%E4%BD%A0%E8%87%AA%E5%8A%A8%E5%88%86%E6%9E%90%E6%95%B0%E6%8D%AE-5f17e11e5a01">如何用 ChatGPT 帮你自动分析数据?</a></li><li><a href="https://wshuyi.medium.com/%E5%A6%82%E4%BD%95%E7%94%A8-chatgpt-%E4%B8%80%E5%8F%A5%E8%AF%9D%E7%94%9F%E6%88%90-web-%E5%BA%94%E7%94%A8-deployscript-%E6%8F%92%E4%BB%B6%E6%BC%94%E7%A4%BA-43a7d06603cc">如何用 ChatGPT 一句话生成 Web 应用?</a></li></ul></article></body>

如何不编程用 ChatGPT 爬取网站数据?

敢于大胆设想,才能在 AI 时代提出好问题。

需求

很多小伙伴,都需要为研究获取数据。从网上爬取数据,是其中关键一环。以往,这都需要编程来实现。

可最近,一位星友在知识星球提问:

这里涉及到一些个人隐私,我就打了码。他的意思很清楚:

第一,他不想编程;

第二,他要获取数据。

在以前,这基本上算是空想。但现在可就不一样了。我觉得敢于设想,是很必要的。这是个好问题

我之前在知识星球里就为你写过一篇相关的文章,叫做《如何用 ChatGPT 的 Advanced Data Analysis 帮你采集数据》。

ChatGPT 的 Advanced Data Analysis 模式(也叫做 Code Interpreter)可以自动编程并执行程序,曾经是数据分析的不二之选。好在现在我们有了更多选择。那篇文章对应的是一个活动网站的爬取(见下图),感兴趣的朋友 可以去看看

只不过,当时这篇文章里,咱们处理的方式,还少不了跟技术打交道。例如你需要获取一些文本的路径信息。

时隔数月,我在想,现在是不是有更简单直接的方法来处理数据呢?

工具

我就到 OpenAI 的 GPTs Store 查看一番。

这里汇集了许多人创造的各种 GPT 应用。你能想到的很多目标,都可以直接利用别人定制的 GPT 来完成,没必要重复发明轮子。咱们今天直奔主题,搜索 “Scraper”。

搜索结果中,我选择了排名第一的工具。你可以看到它的对话数量已经超过 1 万次,这是相当厉害的数据了。

从右上角的数据统计可以看出,Scraper GPT 的评分是 3.9 分,有 430 人参与评分。页面上还列出了一些默认问题,可以帮助你了解它的工作方式。我选择了第一个问题:「我如何从网站获取数据?」

根据回答,我们可以利用 Scraper GPT 获取三类不同的数据:文本、链接和图像。只需告诉 Scraper GPT 网站地址就可以抓取内容,非常简单。

目标

我们需要一个目标网站来进行抓取。本文我选择了我所在的天津师范大学管理学院数据科学系的 师资介绍页面

往下翻,你还能看见我,哈哈。

目标网站准备好了,你把链接拷贝下来,就可以开始尝试了。

文本

把页面网址复制粘贴到Scraper GPT对话框,我首先请求它帮我抓取网页中的文本

很快,Scraper GPT 就把页面上所有文本都提取出来了,包括导航栏、页眉页脚等位置的文字,以及页面上每位老师的姓名、职称、联系方式等信息。

最后 Scraper GPT 还表示,如果需要更进一步的信息,随时可以告诉它。真是服务态度一流。

怎么样?是不是不用编程,直接搞定文本获取?

图像

接下来咱们来试试获取网页中的全部图像。我把相同的网址发送过去,请求它抓取其中的图像。

这次它一共找到了 12 张图片,但在对话界面里都无法正常显示

起初我觉得很失望,但马上意识到它已经成功获取了图片链接。我把链接复制到了 Visual Studio Code 里面,你可以看看它抓取到的内容。

链接有了,如何正常显示呢?简单,咱们把所有内容复制到 Markdown 编辑器 Typora。你可以看到,所有老师的照片都依次展现出来了,很完美。

链接

最后我要求Scraper GPT提取页面中的所有链接

从结果可以看出,Scraper GPT 找到了导航栏、学院简介等页面链接,以及三位老师的个人主页链接。

我觉得这个结果并不完整。不过仔细一看 Scraper GPT 自己已经表示,这「只是链接的一部分」。如果我需要某个特定区域的链接,尽管告诉它。

那我就不客气了,指明它需要给我显示所有「教师」部分的链接。

于是全系所有 9 个老师的页面链接就都出现了。

我把抓取到的链接内容复制到编辑器中,你可以清楚地看到每个链接。

当然了,你一般不会满足于只获得某个网页上的内容,而是希望「顺藤摸瓜」。没问题,链接在手,你可以进一步要求Scraper GPT访问这些链接,抓取二级页面的内容。

深入

这里我以 翟羽佳老师的个人主页举例

进入页面后,你可以看到翟老师的个人介绍、学术成果、研究课题等丰富信息。我用提示词让 Scraper GPT 把页面文本提取出来。

Scraper GPT 把翟老师的职称、联系方式、研究领域等内容都抓取到了。

更进一步还抓取了翟老师的教育背景、工作经历、研究生指导等。

在翟老师的个人主页上,这些信息位于默认页面底部。

但对于那些需要点击展开才能看到的内容,比如学术成果、研究课题、讲授课程等,Scraper GPT 则没能捕捉到具体内容。

我要求 Scraper GPT 抓取学术成果这个部分。

结果 Scraper GPT 表示,无可奈何。

翻译过来就是:

之前提供的内容没有具体说明翟羽佳老师的「学术成果」部分的详细信息。看来这一部分的具体细节没有包含在抓取的文本中。这可能是由于网站内容的布局或动态加载方式造成的,单次抓取可能无法准确捕捉某些特定部分的详细信息。

如果您需要这一部分的详细信息,我建议您直接访问该网页。如果还有其他我可以协助您的地方,请告诉我!

我自己手动查找到翟老师学术成果第一条的 xpath 链接。

然后我把这个 xpath 地址扔给了 Scraper GPT 。但是它还是告诉我,这些它处理不了。

翻译过来,就是:

我无法直接执行或解释 XPath 查询,也无法像浏览器或支持 JavaScript 的专用网页抓取工具那样与网页进行交互。我的能力集中在处理页面由服务器提供的静态内容中的文本、链接或图像,而不是在客户端脚本运行之前。

如果有 JavaScript 生成的内容或信息是动态加载的,我可能无法直接通过简单的抓取访问到它。对于动态加载的内容或需要交互或特定查询 (如 XPath) 的部分,我建议使用专门设计用于动态网页抓取的工具,如 Selenium 或 Puppeteer,它们可以像浏览器一样与网页的 DOM 进行交互。

但是,如果您需要的信息可以通过网页的静态 HTML 访问,请随时提供网址并描述您感兴趣的信息,我会尽力帮助您!

这样看来,如果你希望抓取动态网页内容,恐怕目前 Scraper GPT 无能为力,或许你还真的无法摆脱编程的必要步骤。

小结

通过咱们的演示你可以看出,这款名叫 Scraper 的 GPT 工具非常方便好用。文本、图片、链接这些信息类型,Scrapper GPT都可以根据你提供的链接轻松获取。因为有了链接,你还可以进一步抓取二级页面的信息。重要的是,整个过程完全不需要编程

当然Scraper GPT也有局限性,就是无法准确处理动态网页的内容。对于这些高阶操作,你目前可能还是需要借助 Selenium 等工具,通过编程来实现。但是我相信,随着 AI 能力的进一步提升,以及应用集成度的改进,这些强烈的用户需求,应该在不久后就有免费便捷的工具可以满足了。生活在这样一个人工智能快速进展的时代,真的很容易激动啊。

如果你觉得本文有用,请点鼓掌按钮

如果本文可能对你的朋友有帮助,请转发给他们。

欢迎关注我的专栏,以便及时收到后续的更新内容。

若要收看视频内容,请订阅我的 Youtube 视频频道

我的 Twitter: @wshuyi

欢迎订阅我的 Substack 付费专栏,每月更新不少于3篇文章。目前价格优惠。

如果有问题咨询,或者希望加入社群和热爱钻研的小伙伴们一起讨论,订阅知识星球吧。不仅包括 Substack 的推送内容,还可以自由发帖与提问。之前已经积累下的帖子和问答,就有数百篇。足够你好好翻一阵子。

延伸阅读

爬虫
ChatGPT
Recommended from ReadMedium