Checkbox Puppeter get instagram profile复选框值-HTML不变

Checkbox Puppeter get instagram profile复选框值-HTML不变,checkbox,instagram,puppeteer,Checkbox,Instagram,Puppeteer,学习木偶演员。。。我认为Instagram是一个很好的起点 尝试查看我在Instagram中的帐户是否配置为下的“私人帐户”。我感到困惑的是,选中和未选中的HTML几乎是一样的: 检查: 私人账户 未选中: 私人账户 我认为它可能是的id值,但它不会根据复选框的值而改变。我还尝试了区分选中和未选中的整个html,它们是相同的 在这种情况下,我是否应该拍摄一张截图,看看我是否可以匹配一张☑ 私人帐户“?我觉得这可能是可能的,但不是必须的。HTML在这两种情况下确实是相同的,但DOM树不是。

学习木偶演员。。。我认为Instagram是一个很好的起点

尝试查看我在Instagram中的帐户是否配置为下的“私人帐户”。我感到困惑的是,选中和未选中的HTML几乎是一样的:

检查:

私人账户
未选中:

私人账户
我认为它可能是
id
值,但它不会根据复选框的值而改变。我还尝试了区分选中和未选中的整个html,它们是相同的


在这种情况下,我是否应该拍摄一张截图,看看我是否可以匹配一张☑ 私人帐户“?我觉得这可能是可能的,但不是必须的。

HTML在这两种情况下确实是相同的,但DOM树不是。选中私人帐户“复选框”时,
.mwD2G
div将在执行样式设置的
元素之前获得一个
:以便您可以在
页面中检查它。评估

window.getComputedStyle(document.querySelector(".mwD2G"), ":before").getPropertyValue("content")
因此,如果选中该框,则查询结果为
,如果未选中,则为
none

const privateProfile = await page.evaluate(() =>
    window.getComputedStyle(document.querySelector(".mwD2G"), ":before")
    .getPropertyValue("content") === "none" ? false : true)

是的,谢谢<代码>const account\u privacy=wait page.evaluate(()=>window.getComputedStyle(document.querySelector(.mwD2G)),“:before”).getPropertyValue(“content”)===“none”?false:true)console.log('account privacy check status:',account\u privacy)
还可以使用相同的策略来获取剩余的复选框:
const show_activity_status=wait page.evaluate(()=>window.getComputedStyle(document.querySelectorAll(.mwD2G))[1],“:before”).getPropertyValue(“content”)==“none”?false:true)console.log('Account Privacy checkbox status:',Account_Privacy)
你是如何发现这一点的?我是如何发现这一点的?我在Chrone的开发工具中研究了DOM。默认情况下它不会显示,您需要按父元素上的三角形才能看到它。
window.getComputedStyle(document.querySelector(".mwD2G"), ":before").getPropertyValue("content")
const privateProfile = await page.evaluate(() =>
    window.getComputedStyle(document.querySelector(".mwD2G"), ":before")
    .getPropertyValue("content") === "none" ? false : true)