ChatGPT实现HTML网页文本提取

网页自动化工具

既然ChatGPT对于编程语言有非常强大的理解能力,那么它是否可以用来自动化地处理网页呢?答案是肯定的。ChatGPT可以使用机器学习算法来识别网页元素中的文本,并抽取出有用的信息。

例如我们提供一段层数比较多的相对来说较为复杂的 HTML 代码,如下图所示:

图中我们用红框标出的部分是需要抽取的文本,我们可以要求 ChatGPT 帮我们抽取出其中的文本,看看是否如我们期望的,只将红框中的部分抽取出来。如下图所示:

我们看到,ChatGPT成功地将红框中的文本抽取出来了,而且没有将 HTML 片段中

<img data-v-ae3ef2f2="" data-v-28d01aa9="" src="https://static001.infoq.cn/resource/image/c1/ab/c1a96a0372f54a63493051b05b3d5aab.png" alt="图片默认文字:马斯克开源Twitter算法!推荐机制正式公开,GitHub Star数已破万" class="article-image">

图片标签的默认显示文字抽取出来,可以说对于文本部分的识别成功率还是不错的,后续我们就可以基于这些抽取出来的文本进行进一步的处理了。

ChatGPT对于 HTML 的理解不仅仅在于文本的抽取,它可以识别整个 HTML 的结构,基于这个能力,我们就可以要求 ChatGPT 帮我们去实现一些更有趣的功能。比如我们希望通过输入文本指令,可以控制网页中的元素进行一些操作,例如点击、输入、滚动等等,那么我们可以通过 ChatGPT 对指令进行解析并根据预设的操作和要求,帮助我们按照模版生成相应的指令片段,这样我们后续就可以根据这些统一格式的指令片段进行解析并做相应的处理了。例如,我们可以先给ChatGPT设定一个prompt(提示),告诉他要做什么事情,按照什么模版进行输出:

你是一位浏览器页面自动化助手。

你可以使用的Action包括:
openLink(元素href属性)
click(元素Id)

你将收到一个需要执行的任务以及一段DOM字符串。你需要选择最合适的Action,你最多可以重试一次失败的操作。
下面是你收到任务后响应的例子:
<Thought>我应该点击添加购物车的按钮</Thought>
<Action>click(223)</Action>
你必须始终包含<Thought>和<Action>打开/关闭标签,否则你的响应将被标记为无效。

ChatGPT收到这个prompt后,就会对这个提示进行上下文设定并将自己对于该提示的理解输出。我们可以看看ChatGPT的理解对不对,如下图所示:

可以看到,ChatGPT成功的理解了我们为他设定的prompt,接下来我们就要测试一下他能不能正确执行我们的指令了。我们在输入框中输入如下内容:

用户发起了如下任务:
请打开文章链接

下面是页面内容:
<div data-v-7ce5c5d7="" class="list">
<div data-v-28d01aa9="" data-v-7ce5c5d7="" article-item="" class="article-item image-position-right">
    <div data-v-28d01aa9="" item-main="" class="item-main">
    <div data-v-28d01aa9="" data-icon="" data-video="" class="image"><img data-v-ae3ef2f2="" data-v-28d01aa9=""
...

接下来看看ChatGPT如何应对这个任务,如下图所示:

我们看到,ChatGPT正确的识别出了HTML文本中

<a data-v-65bacb95="" data-v-28d01aa9="" com-article-title="" href="https://www.infoq.cn/news/3OOPEivwhT0gLcKP0Nwl" target="_blank" rel=""  class="com-article-title">

这个link标签中的href属性,并将其作为参数传入了openLink()函数中,并且按照我们设定的输出模版,将和正确的输出到页面上,这样我们就可以把这些统一格式的指令片段进行解析,然后按照需求做相应的处理了。

我们可以预见,这种利用ChatGPT实现的网页自动化技术,未来会有更多的应用和创新,可以使得基于网页的工具更加智能化,更加便捷,应用的场景也会越来越广泛。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 可以使用编程语言如 Python 或 JavaScript 通过 HTTP 协议调用 OpenAI 的 GPT-3 API。具体方法是,使用编程语言发送 HTTP 请求,将请求参数(如文本和 API key)放在请求头或请求体中,并通过解析 API 响应来获取结果。 举个例子,使用 python 的 requests 库可以这样调用 API: ```python import requests import json url = "https://api.openai.com/v1/engines/davinci-codex/completions" query = {"prompt": "What is the capital of France", "temperature":0.5, "max_tokens":200} response = requests.post( url, headers={"Content-Type": "application/json", "Authorization": "Bearer <your_api_key>"}, json=query ) response.json() ``` 这样就可以调用 OpenAI GPT-3 API并获得响应。 ### 回答2: HTML调用ChatGPT API可以通过JavaScript来实现。首先,我们需要在HTML文件中添加一个文本输入框和一个发送按钮,以便用户可以输入问题并发送给ChatGPT API。然后,我们需要使用JavaScript代码来获取用户输入的问题,并将其作为参数发送到ChatGPT API的请求中。 示例代码如下: ```html <!DOCTYPE html> <html> <head> <title>ChatGPT API调用示例</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> </head> <body> <h1>ChatGPT API示例</h1> <label for="question">请输入问题:</label> <input type="text" id="question" name="question"> <button onclick="sendQuestion()">发送</button> <div id="response"></div> <script> function sendQuestion() { var question = document.getElementById("question").value; $.ajax({ url: 'https://api.openai.com/v1/chat/completions', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_API_KEY' }, method: 'POST', data: JSON.stringify({ "prompt": "问题:" + question, "max_tokens": 50, "temperature": 0.7, "n": 1, "stop": ["\n"] }), success: function(response) { var answer = response.choices[0].text.trim(); document.getElementById("response").innerHTML = "回答:" + answer; } }); } </script> </body> </html> ``` 在上述代码中,我们使用了jQuery库来简化发送HTTP请求的过程。需要替换代码中的`YOUR_API_KEY`为您的ChatGPT API密钥。 当用户点击发送按钮时,`sendQuestion`函数将被调用。该函数首先获取用户输入的问题,然后使用`$.ajax`函数向ChatGPT API发送POST请求。API的URL、请求头和请求参数都需要根据OpenAI的API文档进行设置。 在成功接收到API的响应后,我们将提取出回答,并将其显示在页面上。在示例代码中,我们使用`response.choices[0].text.trim()`来获取第一个回答并去除多余的空格和换行符。接着,我们将回答显示在`<div id="response">`元素中。 这样,HTML页面就可以调用ChatGPT API并显示回答了。请注意,由于ChatGPT API是收费的,您需要确保您的API密钥有效并具有足够的使用额度。 ### 回答3: HTML 调用 ChatGPT API 主要分为三个步骤: 第一步是创建一个 HTML 表单,用于接收用户的输入。可以在表单中添加一个文本框,用户可以在其中输入要发送给 ChatGPT 的消息。 第二步是编写 JavaScript 代码,用于通过 API 将用户的消息发送给 ChatGPT,并接收返回的回复。可以使用 XMLHttpRequest 或 Fetch API 进行网络请求。代码可以在用户提交表单时触发,将表单中的消息作为请求发送给 ChatGPT API。 第三步是使用 JavaScript 更新 HTML 页面,将 ChatGPT 返回的回复显示给用户。可以将回复添加到页面的某个元素中,例如一个 `<div>` 元素。代码可以通过修改元素的内容来实现这一功能。 需要注意以下几点: 1. 在发送请求时,要确保提供正确的 API 端点 URL 和有效的 API 密钥。 2. API 端点 URL 可能需要在跨域请求方面进行设置,以便在 HTML 页面中能够发送请求。 3. 考虑到数据的安全性,建议将 ChatGPT API 的密钥存储在服务器端,并根据需要使用服务器端脚本来调用 API,而不是将密钥直接暴露在 HTML 页面中。 通过以上步骤,我们可以实现在 HTML 页面中调用 ChatGPT API,并将聊天模型的回复显示给用户。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

云哲-吉吉2021

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

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

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

打赏作者

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

抵扣说明:

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

余额充值