最近尝试用puppeteer做自动检测,我在跳转后,选取::before ::after做点击事件,代码如下
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({
headless: false,
timeout: 30000,
});
const page = await browser.newPage();
await page.goto('http://localhost:62114/Account/Login?ReturnUrl=%2F');
await page.click("a[data-target='#TenantChangeModal']")
await page.waitFor(1000);
await page.type("input[name='TenancyName']",'Default',{delay:100})
await page.waitFor(500);
await page.click('.btn.btn-primary.save-button.waves-effect');
await page.waitFor(2000);
await page.type("input[name='usernameOrEmailAddress']",'admin',{delay:100});
await page.waitFor(500);
await page.type("input[name='Password']",'123qwe',{delay:100});
const navigationPromise = page.waitForNavigation();
await page.click('#LoginButton'); //然后点击
await page.waitFor(1000);
await page.click("a[class='bars::before']");
//await page.click("a[class='bars']"); //然后点击
})();
跳转成功了
第一个报出这种错误:No node found for selector: a[class='bars::before']
被注释掉的是这个错误:
这个错误我分析要么是这个选取得时候错了,a[class='bars::beforean']这样得选取不了,要么是页面里面的东西没获取到,请前辈们帮我看一下,给个解决方案,万分感谢。