微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

木偶-通过具有身份验证的代理连接到HTTPS网站不起作用

如何解决木偶-通过具有身份验证的代理连接到HTTPS网站不起作用

过去2天,我一直在尝试解决此问题,但一直未能解决。我到处都在查找,仍然没有解决方法。这是代码

const puppeteer = require('puppeteer-extra');
const StealthPlugin = require('puppeteer-extra-plugin-stealth');

puppeteer.use(StealthPlugin());

const PROXY_SERVER_IP = 'IP.IP.IP.IP';
const PROXY_SERVER_PORT = '1234';
const PROXY_USERNAME = 'username';
const PROXY_PASSWORD = 'password';

(async () => {
  const browser = await puppeteer.launch({
    args: [`--proxy-server=http://${PROXY_SERVER_IP}:${PROXY_SERVER_PORT}`],});
  const page = await browser.newPage();

  await page.authenticate({
    username: PROXY_USERNAME,password: PROXY_PASSWORD,});

  await page.goto('https://www.google.ca/',{
    timeout: 0,});

  await page.screenshot({ path: 'test4.png',fullPage: true });

  await browser.close();
})();

在page.goto()调用上出现导航超时错误,因为它由于某种原因而挂起。我不知道为什么。当我放置不需要身份验证的代理时,它可以工作。由于这个问题,我正在考虑切换到另一种无脑的解决方案,我将非常感谢您的帮助。

解决方法

所以我知道了。事实证明,代理由于某种原因确实很糟糕。 Axios和cURL之所以能够给出快速响应,是因为它们只获得了初始HTML代码,并且与无头浏览器不同,它们实际上对HTML文本没有任何作用。使用无头浏览器时,它们实际上也会发出对资产的所有请求(css,图像等)以及任何其他网络请求,并且都通过代理进行,因此速度要慢得多。当我尝试使用其他代理(需要身份验证的代理)时,速度要快得多。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。