如何使用 ChatGPT 进行抓取 thor抓取
yuyutoo 2024-10-20 13:11 4 浏览 0 评论
ChatGPT 爬取简介
使用 SEO Spider 中的自定义 JavaScript 功能,可以在抓取过程中与 OpenAI 的 ChatGPT 等 API 进行通信。
在抓取过程中使用 AI 可以为您打开无限可能。它使您能够在抓取过程中针对页面元素使用提示。
您可以将 OpenAI 的各种模型用于各种目的,例如:
- 生成图像的替代文本。
- 页面内容的语言、情感或意图分析。
- 抓取特定数据。
- 从页面内容中提取嵌入。
以及更多!
您不需要知道如何编写 JavaScript 来使用此功能,可以使用我们的 ChatGPT 模板并按照每个代码片段中评论提供的指导进行调整。
本教程将引导您了解如何使用我们的各种 ChatGPT 代码片段。
如何使用预设 ChatGPT 代码片段
SEO Spider 中有各种预设的 ChatGPT JavaScript 代码片段,只需要 OpenAI API 密钥即可。以下是使用方法。
1)打开自定义 JavaScript 配置
导航到“配置 > 自定义 > 自定义 JavaScript”,然后单击右下角的“从库中添加”。
2) 选择“(ChatGPT)…”代码片段
“系统”选项卡是可供使用的预设 JavaScript 代码片段库。各种 ChatGPT 代码片段均附加有“(ChatGPT)”。
可以选择其中任何代码片段并添加 OpenAI API 密钥即可使用。下面突出显示的代码片段是预设的代码片段,只需要 API 密钥,无需进一步调整。
“ (ChatGPT) 模板”代码片段略有不同,我们将在本教程的后面部分介绍。在本示例中,我们选择了“(ChatGPT) 为图片生成替代文本”代码片段。
双击该代码片段进行选择,它将显示在自定义 JavaScript 配置中。
3)使用 JavaScript 代码段编辑器
单击代码片段行右侧的“JS”框来编辑代码片段。
这将启动 JS 代码片段编辑器配置。
4)添加你的 OpenAI API 密钥
要使用任何 ChatGPT 代码片段,您需要自己的OpenAI API 密钥。这与 ChatGPT 订阅不同,并且易于设置且使用成本低廉。
最简单的使用方式是注册一个OpenAI 账户,选择使用“API”,然后转到计费部分。在这里,您可以选择向账户添加固定金额的信用额度,例如 100 美元,以及调整消费限额等。请仔细查看他们的API 定价,以更好地了解代币的成本。
当您拥有 API 密钥时,请将代码片段第 25 行的“your_api_key_here”文本替换为您的 API 密钥。
记住保留两端的撇号,它看起来应该是这样的。
然后单击“确定”关闭 JS 代码片段编辑器,再次单击“确定”关闭自定义 JavaScript 配置。
5)启用 JavaScript 渲染
要运行自定义 JavaScript 片段,必须通过“配置 > Spider > 渲染”启用 JavaScript 渲染模式。
确保将渲染设置为“JavaScript”,这样页面将在无头 Chrome 的后台渲染。
6)爬取网站
输入您想要使用 ChatGPT 代码片段抓取的网站,然后点击“开始”。
或者使用列表模式上传 URL 列表。
7)查看自定义 JavaScript 选项卡
在自定义 JavaScript 选项卡和相关过滤器中实时查看 ChatGPT JavaScript 代码片段的结果。
在此示例中,使用 OpenAI 中的 gpt-4-vision-preview 模型返回每个图像及其生成的 alt 文本。
对于其他预设的 ChatGPT 片段,将返回其他内容类型并在相关的情况下使用不同的模型。
如何创建自定义 ChatGPT JS 代码片段
您可以使用“(ChatGPT) 模板”代码片段并进行调整来创建您自己的自定义 ChatGPT JavaScript 代码片段。让我们来看看。
1) 选择“(ChatGPT) 模板”代码片段
导航到“配置 > 自定义 > 自定义 JavaScript”,单击“从库中添加”并选择“(ChatGPT)模板”代码片段”。
按照上面已经概述的说明打开 JS 编辑器,并按照代码片段注释中的说明添加您的 OpenAI API 密钥。
2)调整提示
这就是奇迹发生的地方。在第 26 行,你可以用自己的自定义提示替换“你对以下文本有何看法?:”。
例如,“这段文字是什么语言?”或“为以下文字生成一个元描述,该描述的长度不超过 155 个字符,包括任何 USP 和最后的行动号召”。
在第 27 行,您可以调整用于提示的内容。默认为正文,但可以将其更新为页面标题、元描述或标题(作为示例)。
第 29 行至第 36 行的注释提供了这些示例,我们在下面还提供了更多内容。
HTML:
[document.documentElement.outerHTML];
主体:
[document.body.innerText];
页面标题:
[document.title];
元描述
[document.querySelector('meta[name="description"]')?.getAttribute('content')];
h1 标题(根据需要替换为 h2 等)
[...document.querySelectorAll('h1')].map(h => h.textContent);
在 JS 测试器的右侧插入一个 URL,然后单击“测试”以确保它按预期工作。
在提取器的底部,您可以调整代码片段所针对的内容类型。ChatGPT 模板的默认类型是 HTML。
3)将代码片段添加到你的库中
如果您对代码片段满意并希望保存以供将来使用,请单击“将代码片段添加到用户库”。
提供适当的名称和描述,然后单击“确定”接受,然后再次单击“确定”并“确定”退出配置对话框。
4)查看自定义 JS 选项卡
不要忘记启用JavaScript 渲染,然后坐下来观看结果出现在自定义 JavaScript 选项卡和相关过滤器中。
如果您已经熟悉使用 ChatGPT,则可能需要对提示进行一些改进才能获取所需的数据。
此示例仅用于启发灵感,我们不建议在未经审核和编辑的情况下将其用于元描述。
额外提示!
使用自定义 JavaScript 代码段和 ChatGPT 时需要考虑各种事项,您可能需要进一步配置这些事项。这些包括:
- 模型– 在每个 ChatGPT 代码片段中,都有一个模型:。一般来说,'gpt-3.5-turbo' 用于特定于 HTML 的代码片段,但可以在代码片段中更新以使用另一个模型,例如'gpt-4-turbo'。查看OpenAI 模型的完整列表。
- 速度– 不同的 OpenAI 模型和使用层级有不同的速率限制。请求速度可以通过“配置 > 速度”在 SEO Spider 中与抓取速度一起控制。但是,用户也可以扩展代码片段以包括节流作为替代方案。
- 内容类型– 对于创建的每个代码片段,您可以定义代码片段所针对的内容类型。例如,文本/html与页面上的文本内容相关的片段,或图像/使用 gpt-4-vision-preview 模型时。
- 文档——查看我们关于自定义 JavaScript 的综合文档,以了解有关其工作原理的更多详细信息。
如果您编写了任何独特且富有洞察力的 JavaScript 代码片段,请通过支持告知我们,我们可以将其包含在我们的代码片段库中。
常见错误
请阅读我们的关于如何调试自定义 JavaScript 代码片段的教程。
您可能会在 ChatGPT 代码片段中看到的常见错误包括:
类型错误:无法获取
错误将出现在 JS 代码片段测试器和自定义 JavaScript 选项卡和列中,如下所示:
TypeError: Failed to fetch
如果您按照上述教程在 Chrome 控制台中测试代码片段,您经常会看到以下错误:
Refused to connect to 'https://api.openai.com/v1/chat/completions' because it violates the following Content Security Policy directive
这意味着该网站有一个“Content-Security-Policy”标头,不允许 OpenAI 域。
因此,您无法为该 URL 运行任何 OpenAI ChatGPT 代码片段。
该模型不存在
错误将出现在 JS 代码片段测试器和自定义 JavaScript 选项卡和列中,如下所示:
The model `gpt-4o` does not exist or you do not have access to it.
如果您使用其中一个默认代码片段,它将使用“gpt-4o”模型——该模型肯定存在。
因此,请确保您拥有一个资金充足的 OpenAI 帐户并具有正确的访问权限。
您可以在OpenAI 游乐场的设置中的“模型”选择选项卡下查看您可以访问哪些模型。
相关推荐
- 微软Win10/Win11版Copilot上线:支持OpenAI o3推理模型
-
IT之家4月3日消息,科技媒体WindowsLatest昨日(4月2日)发布博文,报道称Windows10、Windows11新版Copilot应用已摘掉Beta帽...
- WinForm 双屏幕应用开发:原理、实现与优化
-
在当今的软件开发领域,多屏幕显示技术的应用越来越广泛。对于WinForm应用程序来说,能够支持双屏幕显示不仅可以提升用户体验,还能满足一些特定场景下的业务需求,比如在演示、监控或者多任务处理等场景...
- OpenJDK 8 安装(openjdk 8 windows)
-
通常OpenJDK8和11都能互相编译和通用。我们建议使用11,但是如果你使用JDK8的话也是没有问题的。建议配置使用OpenJDK,不建议使用OracleJDK,主要是因为版...
- 基于 Linux 快速部署 OpenConnect VPN 服务(ocserv 实战指南)
-
一、前言在如今远程办公和内网穿透需求日益增长的背景下,搭建一套安全、稳定、高效的VPN系统显得尤为重要。OpenConnectServer(ocserv)是一个开源、高性能的VPN服务端软件...
- 巧妙设置让Edge浏览器更好用(edge怎么设置好用)
-
虽然现在新版本的Edge浏览器已经推出,但是毕竟还处于测试的状态中。而Win10系统里面自带的老版Edge浏览器,却越来越不被人重视。其实我们只需要根据实际情况对老版本的Edge浏览器进行一些简单的设...
- 微软开源博客工具Open Live Writer更新:多项Bug修复
-
OpenLiveWriter前身是WindowsLiveWriter,是微软WindowsLive系列软件之一,曾经是博主们非常喜爱的一款所见即所得博文编辑工具,支持离线保存,还支持图像编辑...
- 基于OpenVINO的在线设计和虚拟试穿 | OPENAIGC大赛企业组优秀作品
-
在第二届拯救者杯OPENAIGC开发者大赛中,涌现出一批技术突出、创意卓越的作品。为了让这些优秀项目被更多人看到,我们特意开设了优秀作品报道专栏,旨在展示其独特之处和开发者的精彩故事。...
- Python open函数详解(python open函数源码)
-
演示环境,操作系统:Win1021H2(64bit);Python解释器:3.8.10。open是Python的一个内置函数,一般用于本地文件的读写操作。用法如下。my_file=open(fi...
- 世界上最好用的Linux发行版之一,OpenSUSE安装及简单体验
-
背景之前无意在论坛里看到openSUSE的Linux发行版,被称为世界上最好用的Linux发行版之一(阔怕),一直想体验一下,于是这期做一个安装和简单体验教程吧。...
你 发表评论:
欢迎- 一周热门
-
-
前端面试:iframe 的优缺点? iframe有那些缺点
-
带斜线的表头制作好了,如何填充内容?这几种方法你更喜欢哪个?
-
漫学笔记之PHP.ini常用的配置信息
-
推荐7个模板代码和其他游戏源码下载的网址
-
其实模版网站在开发工作中很重要,推荐几个参考站给大家
-
[干货] JAVA - JVM - 2 内存两分 [干货]+java+-+jvm+-+2+内存两分吗
-
正在学习使用python搭建自动化测试框架?这个系统包你可能会用到
-
织梦(Dedecms)建站教程 织梦建站详细步骤
-
【开源分享】2024PHP在线客服系统源码(搭建教程+终身使用)
-
2024PHP在线客服系统源码+完全开源 带详细搭建教程
-
- 最近发表
-
- 微软Win10/Win11版Copilot上线:支持OpenAI o3推理模型
- WinForm 双屏幕应用开发:原理、实现与优化
- 推荐一个使用 C# 开发的 Windows10 磁贴美化小工具
- OpenJDK 8 安装(openjdk 8 windows)
- 基于 Linux 快速部署 OpenConnect VPN 服务(ocserv 实战指南)
- 巧妙设置让Edge浏览器更好用(edge怎么设置好用)
- WPF做一个漂亮的登录界面(wpf页面设计)
- 微软开源博客工具Open Live Writer更新:多项Bug修复
- 基于OpenVINO的在线设计和虚拟试穿 | OPENAIGC大赛企业组优秀作品
- C#开源免费的Windows右键菜单管理工具
- 标签列表
-
- mybatis plus (70)
- scheduledtask (71)
- css滚动条 (60)
- java学生成绩管理系统 (59)
- 结构体数组 (69)
- databasemetadata (64)
- javastatic (68)
- jsp实用教程 (53)
- fontawesome (57)
- widget开发 (57)
- vb net教程 (62)
- hibernate 教程 (63)
- case语句 (57)
- svn连接 (74)
- directoryindex (69)
- session timeout (58)
- textbox换行 (67)
- extension_dir (64)
- linearlayout (58)
- vba高级教程 (75)
- iframe用法 (58)
- sqlparameter (59)
- trim函数 (59)
- flex布局 (63)
- contextloaderlistener (56)