如何在Puppeteer无头测试中解决Windows身份验证

时间:2019-04-02 21:03:59

标签: google-chrome automation chromium puppeteer

如何进入使用Windows身份验证的应用程序,

您好,所有尝试使用puppeteer进行自动化和性能测试的puppeteer都是新手,因此在尝试进入应用程序并进行示例检查时无法进行,因为Windows身份验证无法通过,请帮助,我尝试下面的代码不起作用:(

const puppeteer = require('puppeteer');



async function test() {

    const proxyUrl = 'URL';
    const username = 'Uname';
    const password = 'pwd';

    const browser = await puppeteer.launch({
        args: [`--proxy-server=${proxyUrl}`],
        headless: false,
    });

    // let browser = await puppeteer.launch({ headless: false });
    let page = await browser.newPage();

    await page.authenticate({ username, password });
    await page.goto('URL')

    const html = await page.$eval('.ds-tile-container', e => e.innerHTML)
    expect(html).not.toBeNull();
    await page.pdf({ path: 'hn.pdf', format: 'A4' });

    browser.close()
}

test();

我也尝试了以下代码

const oldProxyUrl = 'https://siteurl:8080';
    const newProxyUrl = await proxyChain.anonymizeProxy(oldProxyUrl);

    console.log(newProxyUrl);

    const args = [
        '--disable-setuid-sandbox',
        '--no-sandbox',
        '--ignore-certificate-errors',
        '--ignore-certificate-errors-spki-list ',
      ];
      const options = {
        args,
        headless: true,
        ignoreHTTPSErrors: true,
      };

    const browser = await puppeteer.launch(options);

现在出现类似错误

  

(节点:20520)UnhandledPromiseRejection警告:未处理的承诺   拒绝(拒绝ID:1):错误:无效的“ proxyUrl”选项:仅   目前支持HTTP代理。 (节点:20520)[DEP0018]   DeprecationWarning:已弃用未处理的承诺拒绝。在   未来,未处理的承诺拒绝将终止   具有非零退出代码的Node.js进程。

0 个答案:

没有答案