For the complete documentation index, see llms.txt. This page is also available as Markdown.

Puppeteer

使用 Oxylabs 代理为 Puppeteer 配置,以通过 Node.js 控制无头 Chrome 或 Chromium。带代码示例的分步指南。

Puppeteer 它是一个 Node 库,提供一个高级 API,可通过 DevTools Protocol 控制无头 Chrome 或 Chromium。

观看我们的视频指南,或按照下面的步骤将 Puppeteer 与以下 Oxylabs 代理集成:

步骤 1

安装 Node.js 以及您选择的代码编辑器。(如果您已安装,可跳过此步骤)

步骤 2

创建一个 Node.js 项目并安装所需的包。

步骤 3

在 Puppeteer 中,填写该值,例如:

在你的 Puppeteer 脚本中,设置 --proxy-server 值,如下所示:

输入您的 服务器 值,具体取决于您选择的 Oxylabs 代理类型:

住宅代理和移动代理

主机: pr.oxylabs.io

端口: 7777

用户名: customer-USERNAME

密码: PASSWORD

你还可以使用 附加参数 搭配住宅代理和移动代理来设置地理位置(国家/地区、州、省、市等)并控制会话。查看 住宅代理文档 以了解更多。

数据中心代理

主机: dc.oxylabs.io

端口: 8001

用户名: user-username

密码: password

按 IP 计费订阅

端口是分配给来自 代理列表的 IP 地址的顺序编号。因此,端口 8001 将始终使用你列表中的第一个 IP 地址。你也可以通过将端口设置为 代理 IP 轮换 来启用 8000.

此外,你还可以指定 地理位置,例如美国,方法是将 代理用户名 设置为 user-USERNAME-country-US.

按流量计费订阅

该端口 8001 会随机选择一个 IP 地址,但在会话期间保持一致。或者,你可以通过使用端口 轮换代理 IP 来在每个请求中更换 IP 8000.

如果你想使用特定的 地理位置,例如美国,请将代理用户名设置为 user-USERNAME-country-US.

独享数据中心代理(企业版)

主机: 1.2.3.4 (来自你的 代理列表)

端口: 60000 (HTTP), 1180 (SOCKS5)

用户名: username

密码: password

对于企业版独享数据中心代理(通过销售团队购买),你需要从已获取的 代理列表.

独享数据中心代理(自助服务版)

主机: ddc.oxylabs.io

端口: 8001

用户名: user-username

密码: password

对于自助式独享数据中心代理(通过 Oxylabs 仪表盘购买),端口表示从已获取的 代理列表的 IP 地址的顺序编号。如果你希望每个请求都获得不同的 IP,请将端口改为 8000 以启用 代理轮换.

ISP代理

主机: isp.oxylabs.io

端口: 8001

用户名: user-username

密码: password

对于 ISP 代理,端口会分配给一个特定的 IP 地址及其位置。因此,端口 8001 将始终选择你 代理列表的 IP 地址的顺序编号。如果你希望每个请求都获得不同的 IP,请将端口改为 8000 以启用 代理轮换.

独享ISP代理

主机: disp.oxylabs.io

端口: 8001

用户名: user-username

密码: password

您需要选择分配给所购买的 IP 地址的端口 代理列表,你可以在 Oxylabs 控制面板中找到。 8001 端口将为所有请求选取列表中的第一个 IP 地址。使用端口 8000 可自动进行 代理 IP 轮换.

步骤 4

page.authenticate(), 输入你的 Oxylabs 代理用户的 usernamepassword. 一个基本代码示例如下:

就这样!你已成功将 Oxylabs 代理与 Puppeteer 集成。你还可以在原始的 Puppeteer 集成博客文章中找到 proxy-chain 教程以及轮换代理指南。 此处.

如果你想了解更多使用 Puppeteer 进行网页抓取的内容,请阅读我们的 博客文章.

常见错误

Puppeteer 返回错误

你可能遇到的问题之一是在尝试连接代理服务器时,Puppeteer 返回错误。造成这种情况的原因可能多种多样,其中最主要的原因是你的代理服务器需要使用代理凭据进行身份验证。

要解决此问题,你需要在 Puppeteer 选项 对象中输入代理服务器的用户名和密码。之后,再试一次使用代理。

页面未加载

尽管 Puppeteer 可能已经能够连接到代理,但它仍然可能难以加载页面。最常见的原因是网络连接不佳。

解决此问题最常见的方法是增加 Puppeteer 选项 对象中的超时。完成后,使用代理应该不再是问题。

其他问题

如果问题仍未解决,这意味着出于某种原因,你的代理无法保持连接。在这种情况下,你应该检查代理服务器或联系你的提供商以获得进一步帮助。

最后更新于

这有帮助吗?