如何在puppeteer中处理多个重定向?

时间:2018-06-07 11:55:32

标签: puppeteer

我正在尝试在评估内部的表单发布后打开一个页面。表格发布后有两个重定向,可以是任意数字,然后我找到最后一页。

在评估发布的帖子之后,我尝试通过在下面(2次重定向2次)来处理它。

await page.waitForNavigation({'waitUntil':'domcontentloaded'});
await page.waitForNavigation({'waitUntil':'domcontentloaded'});

以上工作正常但我必须处理任何数量的重定向可能发生的情况。

我不会在DOM上有任何特定的选择器,因为页面可能会多次不同。

  • Puppeteer版本:1.4.0
  • 平台/操作系统版本:Linux
  • 网址(如果适用):NA
  • Node.js版本:8.10.0

以下是我正在使用的代码的一部分:

const formPost = await page.evaluate(a => {

    var form = formBuilder("payment_post", "post", acsUrl);                
    for (var i in a) {
        form.add(i, i, 'hidden', a[i]);
    }
    form.generate("pareqFormContainer");
    form.submit();
    return document.querySelector('#pareqFormContainer').innerHTML;

}, jsonData)
.then(function () {
    logger.info("form submitted with pareq and MD for txnId : " + jsonData.txnId)
});               

await page.waitForNavigation({'waitUntil' : 'domcontentloaded', 'timeout' : waitTimeOut}); 
await page.waitForNavigation({'waitUntil' : 'domcontentloaded', 'timeout' : waitTimeOut});

0 个答案:

没有答案