我的资料
我的订单
  购物车 (0)  
亲,您的购物车空空的哟~
去购物车结算
   
查看手机网站
其他账号登录:
与言文化传媒科技

使用chatgpt代码解释器轻松自动化抓取任何网页-凯发ag旗舰厅

 二维码
发表时间:2023-09-18 07:25

只需要按照3个步骤,就可以使用chatgpt代码解释器从网站提取数据。


在之前的文章中,我向您展示了如何使用chatgpt和chatgpt的插件“scraper”来抓取网站。这些都是不错的方法,但也存在一些限制和缺点。

但是,chatgpt代码解释器将网络抓取提升到了一个不同的层次。

在本文中,我们将探讨如何使用chatgpt代码解释器自动化网络抓取。

要使用chatgpt代码解释器抓取网站,我们需要上传目标网站的html文件。

为此,访问目标网站并按ctrl s,并将文件保存为html。

假设我想提取amazon上的电视价格。我只需要访问amazon并输入“tvs”。


然后我按ctrl s,下面的窗口就会弹出。确保你将文件保存为html。


这个html文件包含了amazon网站的所有数据。现在我们需要使用代码解释器上传该文件。

现在我们需要转到chatgpt,选择gpt-4,然后点击“code interpreter”。


代码解释器只对chatgpt plus订阅者开放。如果你还没有启用它,可以按照此指南中的步骤激活它。

现在你应该在聊天栏中看到一个加号按钮。点击它上传html文件。


然后我们需要使用以下提示来提取数据并导出到csv文件:

从html文件中提取产品名称和价格,将数据放在表格中,并导出到csv文件。


前面的提示有时就足够了,但为了使提示更为健壮,我们需要指定我们的数据所在的html元素。

为此,访问目标网站,找到你想提取的数据(在这种情况下,是产品的名称和价格),然后右键点击它并选择“检查”。

开发者工具将弹出,并高亮显示包含你希望提取的数据的html元素,复制蓝色高亮的元素。


这是我复制的元素:

introducing amazon fire tv 40" 2-series 1080p hd smart tv, stream live tv without cable

如果你重复这个步骤对价格进行操作,你会得到如下面的元素:

189.

现在,如果你有过抓取网站的经验,你可能知道总会有数据缺失,所以我们必须在我们的提示中处理这种情况。

这是我们将要使用的最后的提示:

从html文件中提取产品名称和价格,将数据放在表格中,并导出到csv文件。

这是一个产品的元素:

introducing amazon fire tv 40" 2-series 1080p hd smart tv, stream live tv without cable

这是价格的元素:

189.

如果产品的价格缺失,请将该价格作为空数据。

在给chatgpt发出提示后,我得到了我请求的表格的预览和下载csv文件的链接。


注意:仔细检查你的csv文件。有时,chatgpt会复制其他行的数据,而不是将空数据作为一个空单元格。如果是这种情况,你需要使用下面的提示:

有些产品(如lg 55-inch class uq7570 series 4k smart tv, ai-powered 4k, cloud gaming (55uq7570puj, 2022)没有价格,您错误地将其他产品的价格指定给了它。您能解决这个问题并告诉我哪些产品没有价格吗?

那还不是全部!你可以通过提供新的html文件来抓取第2、3、4...页

到目前为止,我们抓取了amazon的第一页,但还有其他页有更多的数据。要抓取所有页面,我们需要转到我们想要的页面,并将其保存为html。

然后我们上传这个新的html文件,并使用下面的提示。

这是前面网站的第[n]页。使用html文件提取数据,按照我之前描述的相同步骤。

这是我下载的csv文件的一部分。


附加内容:使用略有不同的方法抓取glassdoor

假设我们想抓取glassdoor上的职位发布信息。我们将遵循相同的步骤。

首先,我们会访问glassdoor,搜索我们想要的职位,然后按ctrl s将页面保存为html。然后我们检查想要提取的数据,但现在我们不是复制蓝色高亮的整个元素,而是选择一个属性。在这种情况下,我会选择id。


我检查的元素的id是“job-title-1008760392125”。这可以简化为“job-title”。如果我们重复对岗位的雇主、地点和薪资的处理,我们会构建下面的提示:

从html文件中,查找下列ids的元素并提取其数据

job-employer

job-title

job-location

job-salary

将数据放在表格中,并导出到csv文件。如果有缺失的数据,将其作为空数据。

现在你可能会收到下面的消息。



这是因为我们通过移除数字来缩短“job-title-1008760392125”,所以id的名称并不完整。因此我们必须告诉chatgpt使用正则表达式匹配id名称的部分:

这些是ids的一部分,使用正则表达式匹配id名称的部分

然后我们得到了我们的数据!

凯发ag旗舰厅-凯发k8国际手机app下载

凯发ag旗舰厅-凯发k8国际手机app下载

加入社群,领取福利:


分享到:
咨询热线:
17897738537
关注凯发ag旗舰厅:
会员登录
登录
其他账号登录:
我的资料
购物车
0
留言
回到顶部
网站地图