如何获取Puppeteer中page.click()的正确元素定位符?
挑战
使用Puppeteer的page.click('something')方法时,首要挑战是确保传入正确的元素定位符。这是一个非常普遍的问题,但我尚未找到简便的解决方法。
已尝试方案
我在Google Chrome中检查想要点击的元素,获取包含类名等信息的完整元素描述,基于找到的示例,我的操作步骤如下:
- 提取类名
- 将类名中的空格替换为点号
- 尝试使用该定位符
- 若失败,则检查元素的上级标签(如button),添加为前缀后重试
这种方法并非最优,有时还会失效(可能是我操作有误)。
我注意到Chrome在悬停目标元素时通常会显示提示信息,但不确定是否可用,也未找到复制该信息的方法(且内容较长)。
若有其他推荐方法(例如在浏览器中查找元素名称,再用Puppeteer列出所有可能项)也可接受,我仅需获取page.click()的正确输入参数。
示例场景:在隐身窗口打开此问题,点击分享或关注按钮;或在Staples等电商网站点击加入购物车按钮。
内容的提问来源于stack exchange,提问作者Dennis Jaheruddin
相关产品推荐
相关产品推荐

