微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 puppeteer 获取 DOM 中单击元素的值

如何解决使用 puppeteer 获取 DOM 中单击元素的值

我想通过 Puppeteer 获取元素值。

就像选择器一样,这是 devtools 中的一个特性。

例如:

This Photo - (1)

This Photo - (2)

我想将所选项目的值赋给变量。

with puppeteer so 代码场景:

const puppeteer = require("puppeteer");
(async () => {
const browser = await puppeteer.launch(
    {
        "headless": false,defaultviewport: null,args: ['--start-maximized'],"slowMo": 1
    });
const page = (await browser.pages())[0];
await page.goto('https://covidtesting.collinsonassistance.com/s/login/',{ waitUntil: 'networkidle2' });

// I don't kNow what's next...

})();

我在DOM中想要获取我点击的对象的元素值。

我稍后会处理它。

例如,我会自动点击按钮,稍后使用该值。

这可能吗?

解决了,这是我的代码

await page.exposeFunction('onClick',onClick);  

 // Listening for click events on the window
await page.evaluateOnNewDocument(() => {
    window.addEventListener('click',(event) => {
        let tagName = event.target.tagName
        let eClass = event.target.getAttribute("class")
        let id = event.target.getAttribute("id")
        window.onClick(tagName,eClass,id);
    });
});

await page.goto('https://auth.pleaseignore.com/login/',{ waitUntil: 'networkidle2' });

function onClick(tagName,id) {
    console.log(`You have clicked on: id: #${id} class: .${eClass} tagName: ${tagName}`);
    let selector = getSelector(tagName,id);
    console.log('selector: ',selector)
    elementClicked(selector,page)
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。