【问题标题】:File chooser dialog can only be shown with a user activation error while using web scraping through Javascript文件选择器对话框只能在通过 Javascript 使用网络抓取时显示用户激活错误
【发布时间】:2022-07-20 14:22:39
【问题描述】:

我正在尝试使用命令以编程方式单击网页中的按钮

document.getElementsByName("versionFile")[0].click()

虽然此命令在开发人员工具控制台中运行良好(打开文件选择器),但我无法在脚本中执行此命令,因为它给了我一个错误,提示“文件选择器对话框只能在用户激活时显示”突出显示click() 函数

谁能帮我解决这个问题。

【问题讨论】:

  • vba 跟这个有什么关系?
  • 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: javascript web-scraping


【解决方案1】:

大多数现代浏览器都会限制不是由用户启动的 JavaScript 交互,以避免烦人的页面并使 XSS 更加困难。

如果您使用像 puppeteer 这样的网络抓取库,您应该使用它的 API(例如使用 page.click)与页面交互,而不是通过在页面上注入 JavaScript。

如果这不是一个选项,您需要找到按钮触发的回调函数,并绕过element.click()方法。

【讨论】:

    【解决方案2】:

    我想问一下您是否设法解决了您的问题,因为我也遇到了同样的问题。

    谢谢 彼得

    【讨论】:

    猜你喜欢
    • 2020-03-20
    • 1970-01-01
    • 2015-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-01
    • 1970-01-01
    相关资源
    最近更新 更多