首页 > 解决方案 > 我一直在尝试使用 Puppeteer 登录网站

问题描述

我一直在尝试使用 Puppeteer 登录到这个网站然后找到一个 div 但它给了我一个奇怪的错误:

puppeteer.launch({
  headless:false
}).then(async browser => {
  console.log("jdwjdjwd")
  const page = await browser.newPage();
  await page.goto('https://www.biuportal.net/LogIn.aspx#', {waitUntil: 'load', timeout: 100000})
  await page.click('a#modalCloseBtn');
  await page.type('#txtUserName', "bas/csc/170387");
  await page.type("#txtPassword", "password1");
  await page.click("#btnLogin")
  await page.waitForSelector("div#NameHolder")
 const x =   await page.$eval("div#NameHolder", el=>el.innerHTML)
 console.log(x)

标签: javascriptpuppeteer

解决方案


尝试在 waitForSelector 之前添加 waitforNavigation。

await page.waitForNavigation;
//maybe try page._frameManager._mainFrame.waitForNavigation()

await page.waitForSelector("body > section > div:nth-child(3) > ul", {
   timeout: 30000
});

const StoreList_ul = await page.$$("body > section > div:nth-child(3) > ul");

推荐阅读