通过访问此url,写下以下脚本以自动获取电线。
以下代码出现问题:
无法在结果页面上获取p.ng-binding
的文字
const browser = await puppeteer.launch({ headless: false, timeout: 1000000 });
let page = await browser.newPage();
page.setDefaultNavigationTimeout(1000000)
await page.goto('https://pokedex100.com/?d=dcgrtr4WmaRvW', { waitUntil: "domcontentloaded" });
await page.waitForSelector('input[id="register-email"]', { timeout: 1000000 });
await page.type('input[id="register-email"]', "my_email_id")
await page.type('input[id="register-password"]', "my_login_password")
await page.click('button[class="btn btn-primary"]')
await page.waitForSelector('button[class="primary"]', { timeout: 1000000 })
await page.click('button[class="primary"]')
page = await browser.newPage(); // See justification below
page.waitFor(5000)
page.setDefaultNavigationTimeout(1000000)
await page.goto('https://pokedex100.com/?d=dcgrtr4WmaRvW', { waitUntil: "domcontentloaded" })
await page.waitForSelector('p[class="ng-binding"]', { timeout: 1000000 }).then(async cords => {
//let cord = await page.$('p[class="ng-binding"]')
console.log("target")
console.log(page.target)
page.$eval('p[class="ng-binding"]', element => {
console.log("element.innerHTML")
console.log(element.innerHTML)
console.log(element.textContent)
console.log(element.nodeName + ' ' + element.nodeValue)
})
})
我使用的原因page = browser.newPage()
是因为,我观察到,页面加载到目标上需要时间,但是当我打开新窗口时加载速度会更快。