您可以使用网络抓取程序将内容导入人工智能专员。这样您的人工智能专员就可以根据外部网站的信息,针对客户的问题创建人工智能生成的答案。
本文章可帮助您解决在使用网络抓取程序为人工智能专员导入内容时遇到的问题,包含以下主题:
抓取失败,因为已超时
如果网络抓取在几个小时后失败,通常是超时造成的。默认情况下,抓取限于五小时。如果在导入开始五个小时后失败,可能是因为超时。
如果发生这种情况,请尝试以下解决步骤:
- 如果网站不依赖于 JavaScript,请将抓取程序类型设置为速度更快的原始 HTTP 客户端 (Cheerio),然后重试。
- 如果您知道网站包含您实际上并不需要的内容,请参阅抓取的内容包含不必要的页面。
- 将抓取拆分为两个或更多单独的抓取(使用包含 URL或排除 URL设置),每次抓取仅抓取网站的部分内容
抓取缺失页面
如果抓取过程中缺失完整 URL 或文章,请使用起始 URL和包含 URL扩大抓取范围。如果您确定设置正确,但仍缺少文章,请检查导入概要中的已抓取页面数。如果在默认的“要抓取的最多页面数” (4,000)左右,请尝试增加此设置。
抓取包含不必要的页面
如果抓取包含的页面或文章多于必要数量(例如重复或不适用的内容,例如英语页面,而您只需要西班牙语,或者您的人工智能专员不需要回答客户问题),请使用排除 URL设置。
要避免的就是意外排除某些子页面。起始 URL定义了抓取程序的起始位置。然后,它跟踪该页面及后续页面的所有链接,一直跟踪到指定的最大抓取深度。但是,如果您排除页面,则系统不会抓取任何仅从排除页面链接的页面,除非单独指定为起始 URL 。
示例参见下图。每个圆圈代表一个页面,每个箭头代表该页面的一个链接。如果抓取从顶部页面开始(如 所示,它是唯一的开始 URL ),并且紫色页面被排除在外,则以下情况为 true:
- 无法抓取红色页面
- 抓取所有黄页
- 绿色页面也会被抓取,即使它是从排除的紫色页面链接的,因为它也是从包含的黄页之一链接的

抓取包含正确的页面,但包含错误的内容
如果抓取程序返回正确的页面,但返回这些页面内的错误内容,则高级抓取程序设置将提供用于查找并包含或排除此类内容的工具。您需要为要包含或排除的元素找到正确的 CSS 选择器,然后将其插入到正确的设置中。为此,有必要了解什么是 CSS 选择器以及如何找到它。
本部分包含以下主题:
了解并查找 CSS 选择器
关于 CSS 选择器
CSS 选择器是用于选择并定位网页上特定 HTML 元素的模式。借助它们,您可以从复杂的网页中轻松查找并准确提取所需的数据。
在网络抓取和抓取中,CSS 选择器可通过精确定位页面结构的确切部分来帮助提取数据,例如<div>,<span> 、 或带有某些类别和 ID 的元素。例如,选择器.product-title以 类的所有元素为目标"product-title"。井号 (#) 用于按元素的唯一 ID 选择元素。例如,#main-header选择带有 的元素id="main-header"。
查找 CSS 选择器
首先,您需要找到要使用的 CSS 选择器。以下说明假定您使用的是 Chrome 网络浏览器。但是,其他浏览器的步骤可能类似。
查找 CSS 选择器的步骤:
- 在要定位的网页上找到文本或可点击项目
-
直接右键单击该元素,然后选择检查
Chrome 开发者工具面板随即打开,匹配的代码段会突出显示。
-
在 DevTools 面板中,右键单击突出显示的代码,然后选择复制>复制选择器
现在您已将 CSS 选择器复制到剪贴板。
验证 CSS 选择器
找到 CSS 选择器后,最好进行验证。
验证 CSS 选择器:
-
在 DevTools 仍处于打开状态的情况下,按 Ctrl+F(在 Windows 或 Linux 上)或 Cmd+F(在 Mac 上)
这将激活 DevTools 面板元素标签中的搜索栏。
- 将您刚复制的 CSS 选择器粘贴到此搜索框中
- 验证 HTML 和页面本身(通常带有彩色轮廓)中突出显示的元素是否与您的预期匹配
如果仅突出显示您需要的元素,则您的选择器是准确的。如果突出显示的元素过多或错误,请尝试父元素或调整选择。
您也可以测试不同的选择器。有时,选择器越短或更具体,效果越好。您可以单击 HTML 中的父元素或子元素,查看其 CSS 类或 ID,并尝试复制这些选择器。
接下来的两部分将介绍如何使用这些选择器来定位要抓取或不抓取的内容。
抓取正在跳过页面内容
如果您的抓取有正确的页面,但缺少这些页面的内容,以下高级抓取程序设置可能会有所帮助:
- HTML 转换程序抓取程序最初会抓取页面中的所有 HTML,然后应用 HTML 转换器移除无关内容。有时,转换器可能做得太过分,会移除您实际上要保留的内容。因此,当内容缺失时,首先要尝试将此设置更改为“无”,这样就不会移除任何内容,然后检查导入概要。
- 保留 HTML 元素提供一个或多个 CSS 选择器,仅保留特定的 HTML 元素。所有其他内容都将被忽略,帮助您专注于相关信息
-
展开可点击元素使用此选项可捕获折叠面板和下拉菜单背后的内容。默认设置旨在涵盖遵循标准 Web 开发实践,并将下拉菜单定义为
aria=false。换言之,抓取程序遇到此类元素时,会单击打开。为任何应单击的元素(例如可展开隐藏内容的按钮或链接)输入 CSS 选择器。这有助于抓取程序捕获所有文本。确保选择器有效 - 使容器具有粘性如果可展开内容在单击其他元素时关闭,您可以使用此设置确保此类元素在单击后保持打开状态。因此,请为任何应单击的元素输入 CSS 选择器,然后即使在单击其他元素后也保持打开状态,例如展开隐藏内容的按钮或链接
-
等待选择器和软等待选择器:如果页面中的动态内容仅在一段时间后显示,抓取程序可能会错过它,除非引导其等待。有两种方法可以使用 CSS 选择器告诉抓取程序等待。
- 等待动态内容设置决定了抓取程序等待的时间。如果在时限前未找到选择器,则视为请求失败,将重试几次
- 软等待选择器决定了抓取程序等待的时间,同时也确保抓取程序在未找到选择器的情况下继续抓取页面,从而避免抓取失败
- 这些设置不适用于原始 HTTP 客户端 (Cheerio) 抓取程序,因为它不会获取任何 JavaScript 内容
- 最大滚动高度:有些页面过长,导致抓取程序在结束前放弃。如果您在某个点以下缺失内容,可以使用此设置强制抓取程序滚动指定的像素数
抓取返回的页面内容过多或杂乱
如果您的抓取有正确的页面,但这些页面上有多余或不必要的内容(例如市场营销文本、导航、页首或页脚,甚至是 Cookie),且您怀疑这些内容会干扰人工智能专员的回答,请使用以下高级抓取程序设置以排除该内容:
- 保留 HTML 元素提供一个或多个 CSS 选择器,仅保留特定的 HTML 元素。所有其他内容都将被忽略,帮助您专注于相关信息。对于许多帮助中心而言,这是最简单的方法,可确保文章主要内容具有针对性,同时避免显示导航、相关文章以及不必要的横幅和标头。
- 移除 HTML 元素使用 CSS 选择器指定要从抓取中移除的 HTML 元素。这是排除特定已知内容的最精确、最强大的方法
相关文章:
翻译免责声明:本文章使用自动翻译软件翻译,以便您了解基本内容。 我们已采取合理措施提供准确翻译,但不保证翻译准确性
如对翻译准确性有任何疑问,请以文章的英语版本为准。