Acquire

返回博客

SERP 爬虫 API 快速入门指南

Maryia Stsiopkina

2021-12-21

SERP 爬虫 API 是一种强大的工具,旨在通过领先的搜索引擎以实时模式提取大量的公共数据。凭借坐标级的精度,您可以使用 SERP 爬虫 API 来访问不同的搜索引擎页面,例如常规搜索、酒店空房情况、关键字页面和其他数据类型。SERP 爬虫 API 是许多商业案例的最佳选择,包括广告数据跟踪、品牌监控和其他功能。

阅读此快速入门指南,了解 SERP 爬虫 API、它的技术特点、它的运作方式,以及如何开始使用。

您能够通过SERP爬虫API获得什么?

数据来源*

通过SERP爬虫API,您可以从领先的搜索引擎获得JSON和CSV格式的结构化数据。公共数据源包括:

*所有数据来源将在购买产品后提供。

SERP爬虫API用例

SERP 爬虫 API - 它是如何运作的?

您无需开发和维护解析脚本。SERP Scraper API非常容易开始使用。它包括四个主要步骤:

  1. 确定搜索阶段

  2. 选择地理位置、页面类型(搜索页面、图片、酒店等)和其他参数

  3. 发送 GET请求

  4. 通过REST API直接接收数据或转到云

身份验证

SERP爬虫API使用基础的HTTP身份验证,需要一个用户名和密码。这是开始使用这个工具的最简单方法之一。以下代码示例显示了发送一个GET请求的方式,以使用实时方法从搜索引擎获取数据。

*如需了解实时集成方法的更多信息,请继续阅读。

*在这个示例中,您需要指定确切的来源。要找到所有可用来源,请参考我们的文档或联系销售部门。

集成方法

SERP爬虫API提供三种主要的集成方法:Push-Pull、Realtime和SuperAPI,每一种都有独特的好处。

Push-Pull

这种数据交付方法是最简单的,同时也是最可靠的方法之一。在这种方法下,您向我们发送一个查询,我们返回您的工作 id,工作完成后,您可以使用这个 id 从/results端点获得内容。您可以自己检查作业的状态,或者设置一个监听器,一旦数据准备好被收集,监听器会自动向您发送回调消息。这种方法不但节能,其规模还可轻松扩大。这种方法提供了以下功能:

在这个快速入门指南中,我们将提供一个示例,说明如何使用 Push-Pull 集成方法和 cURL 库与 SERP 爬虫 API 进行交互来提出请求。我们将从您选择的美国地理位置的搜索引擎中提取结果。要找到所有支持的搜索引擎来源,请参考我们的文档。*

*完整文档将在购买产品后提供。

单一查询请求的示例:

最受欢迎的搜索引擎也支持立即可用的数据解析。如果您希望得到解析后的结构化数据,而不是页面的HTML文档,请添加"parse": true作为参数。

初始响应输出的样例:

初始响应表明,我们的系统已创建该工作的特定抓取网站。也就是说,它还显示了所有的工作参数和链接,可以检查工作的进展情况或下载内容的位置。

为了检查工作是否"status": "done",您可以使用["_links"][0]["href"]的链接,即为http://data.oxylabs.io/v1/queries/6849314714636265473。

如何检查工作状况的示例:

响应将包含与初始响应相同的数据。如果工作是"status": "done",我们可以使用[“_links”][1][“href”]的链接来检索内容,即为http://data.oxylabs.io/v1/queries/6849322054852825089/results。

如何检索数据的示例:

响应HTML数据输出的样例:

如果您希望我们的系统在工作自动完成后ping您的服务器,则可以立即检索数据。请使用额外的"callback_url":"YOUR_CALLBACK_LISTENER_IP"参数,并参考我们在购买产品后提供的文档,设置您的回调监听器。如果您希望将数据直接送到您的云存储,则需要使用额外的"storage_type"和"storage_url"参数。要完全设置交付给云存储,请参考upload-to-storage文档。

Realtime

虽然push-pull法是一个两步过程,但实时性要求用户在整个过程中与我们的终端保持一个开放的连接。当您向我们发送查询时,连接保持开放,而我们正在获取内容并将其返回给您。

样例:

返回到开放连接上的响应体示例:

SuperAPI

这个方法与Realtime有很多共同之处,但您应该使用HTML Crawler作为代理,并非将数据上传到我们的端点。为了获取内容,您应该设置一个代理端点,并向所需的URL发出GET请求。您的数据将通过开放连接送达您的手中。

SuperAPI请求示例:

参数值*

* 所有参数将在购买产品后提供。

参数 描述 默认值
source 数据来源
url or query 直接 URL(链接)或关键词取决于来源。
user_agent_type 设备类型和浏览器。 desktop
geo_location 用于检索数据的代理地理位置。
locale 区域设置,如 Accept-Language 标头所预期。
render 启用 JavaScript 渲染。当目标需要 JavaScript 加载内容时使用它。只通过 Push-Pull(又称回调)回调)方法工作。这个参数有两个可用值:html(获得原始输出)和 png(获得一个Base64 编码的屏幕截图)。
parse true 将从支持此参数的来源返回至已解析的数据。
content_encoding 如果您要下载图片,请添加这个参数。 base64
context:session_id 如果您想在多个请求中使用同一个代理,则可使用这个参数。只要把您的会话设置成您喜欢的任何字符串,我们将为这个 ID 分配一个代理,保留长达 10 分钟。在此之后,如果您用相同的会话 ID 提出另一个请求,一个新的代理将被分配给这个特定的会话 ID。
callback_url 您的回调端点的 URL。
storage_type 存储器服务提供者。我们支持 Amazon S3 和谷歌云存储器。这些存储器提供者的 storage_type 参数值相应为 s3 和gcs。完整建置可以在购买后提供的文档中查询。该功能只通过 Push-Pull(回调)方法工作。
storage_url 您的存储桶名称。只通过 Push-Pull(回调)方式工作。

响应代码

响应 错误信息 描述
204 无内容 您正试图检索一项尚未完成的工作。
400 多个错误信息 错误请求结构可能是参数拼写错误或无效值。响应体将有一个更具体的错误信息。
401 “未提供授权头”/“无效授权头”\“未找到客户” 缺少授权头或登录凭证不正确。
403 禁用 您的账户无法访问此资源。
404 未找到 您正在寻找的工作编号已不存在。
429 请求次数太多 超出了速率上限。请联系您的客户经理以增加上限。
500 未知错误 服务不可用。
524 服务不可用 服务不可用。
612 未定义的内部错误 出了点问题,我们没能处理您提交的工作。您可以重试一次,但无需支付额外费用,因为我们不对未能完成的工作收费。如果这不起作用,请与我们联系。
613 重试太多次后出现故障 我们尝试抓取您提交的工作,但在达到我们的重试上限后取消。

总结

Oxylabs 的 SERP 爬虫 API 允许高效率地从主要搜索引擎页面上抓取关键数据点,获取的数据将以结构化和方便的格式呈现。凭借一个庞大的代理池,并由我们 24/7 全天候支持团队的协助下,您可以毫无压力地完成您的抓取工作。轻松执行关键字数据收集、品牌监控和广告数据跟踪,仍然可以在坐标层面上获得精确结果。使用三种简单的集成方法和我们在购买后提供的文档,即可开始使用。

希望您觉得这个指南对您有帮助。如果您对SERP爬虫API或Oxylabs的其他产品有任何疑问,请通过support@oxylabs.io在线聊天联系我们。

关于作者

Maryia Stsiopkina

文案

Maryia Stsiopkina 在 Oxylabs 担任一名初级文案。随着她对写作的热情逐渐发展,她在不同的时间点上不是写令人毛骨悚然的侦探故事,就是写儿童童话故事。最终,她发现自己进入了科技仙境,拥有无数隐藏的领域值得他去探索。在业余时间,她用望远镜观鸟(有些人误以为是跟踪,这就是为什么 Maryia 有时会发现自己处于尴尬的境地),制作花卉饰品,并品尝很多泡菜和绿橄榄。

进一步了解 Maryia

Oxylabs博客上的所有信息均按“原样”提供,仅供参考。对于您使用Oxylabs博客中包含的任何信息或其中可能链接的任何第三方网站中包含的任何信息,我们不作任何陈述,亦不承担任何责任。在从事任何类型的抓取活动之前,请咨询您的法律顾问,并仔细阅读特定网站的服务条款或取得抓取许可。

选择Oxylabs®,业务更上一层楼


联系我们

  • 公众邮箱

    hello@oxylabs.io
  • 客服:

    support@oxylabs.io

经过认证的数据中心和上游提供商

联系我们

公司

  • 关于我们
  • 联系我们
  • 联盟计划

隐私政策

Oxysales, UAB © 2022 保留所有权利©