javascript - Puppeteer - 按类名单击按钮?
问题描述
A. 一致性无处不在;running !headless,我看它有时有效,有时无效(比如输入错误的数据),它真的是 50/50。如何优化我的代码以实现 100% 的可靠性?
更新:
通过实现承诺延迟功能和延迟操作来修复不一致问题。
如何单击既不是提交类型也没有名称或 ID 的按钮?
<button class="sb-frap" data-e2e="sendGift">Send gift</button>
JS路径:
document.querySelector("#js-content > div > div:nth-child(6) > span > div > div.absolute.bg-white.overflow-auto.content___2_l5Q > div > div > div > div > div.invisible.base___3dWsJ.alwaysRelative___3FHV5 > div > span > div > button")
await Promise.all([
await page.waitForSelector(".sb-frap"),
await page.click('button[class=".sb-frap"]'),
]);
})();
任何帮助将不胜感激!
解决方案
解决方案=检查元素->右键单击->复制->复制选择器
await Promise.all([
await page.click( paste selector here )
]);
推荐阅读
- java - 严重:子容器在启动过程中失败:但相同的项目在不同的 PC 上运行良好
- arrays - 在没有udf的pyspark中重新解析日期
- php - 如何联接两个表并得到以下结果?
- python-3.x - 为什么我无法使用链接的状态代码获取 htmlpage 中的所有链接
- ios - Firebase AB 测试的变体不成比例
- python - 来自 csv 文件的两个特定列的列表字典
- angular - 如何从组件配置 routerLink
- c# - C# 在 XML 中查找具有给定属性名称的节点
- sql-server - 如何从另一个容器连接到 SQL Server docker 容器?
- php - 带有 php exec 的 Crontab