Я пытаюсь открыть страницу после поста формы внутри оценки.Есть 2 перенаправления после публикации формы, которые могут быть любым числом, и затем я нахожу последнюю страницу.
Я попытался обработать это, поместив ниже (2 раза для 2 перенаправлений) после оценки, в какой публикации формы произошло.
await page.waitForNavigation({'waitUntil':'domcontentloaded'});
await page.waitForNavigation({'waitUntil':'domcontentloaded'});
Вышеописанное сработало правильно, но я должен разобраться в ситуациях, когда может произойти любое количество перенаправлений.
У меня не будет никакого конкретного селектора в DOM, поскольку страница может много раз отличаться.
- Версия Puppeteer: 1.4.0
- Версия платформы / ОС: Linux
- URL-адреса (если применимо): 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});