【问题标题】:Run javascript file with selenium chrome driver使用 selenium chrome 驱动程序运行 javascript 文件
【发布时间】:2015-11-01 21:06:42
【问题描述】:

按照入门指南,我可以使用 driver.execute() 运行 javascript sn-p。如何运行外部 javascript 文件,这些文件本身会加载一些外部模块。

我能想到的可能方法:

  1. 将所有需要的文件连接到一个大文件中,然后将其加载到一个字符串中并使用 driver.execute() 运行它。可能在缩小器的帮助下。

  2. 执行一个小sn-p来加载所有需要的js文件。

  3. 可能在浏览器渲染之前修改html?

有什么建议吗?

【问题讨论】:

    标签: javascript selenium selenium-webdriver selenium-chromedriver


    【解决方案1】:

    您实际上可以通过execute_script() 动态加载脚本。这是一个示例用例,其中jquery 库被动态加载以支持 HTML5 拖放模拟:

    关键功能是通过execute_async_script()(取自here)执行的javascript代码,它通过document.createElement()即时将script元素添加到head

    第一个链接有一个 Python 中的工作示例,第二个链接有一个 Java 中的示例。

    【讨论】:

    • execute_script 之后返回的可能是 execute_async_script 吗?那么execute_script会遇到错误吗?
    • @Shuo 好吧,你需要确保在使用之前加载所需的库..
    猜你喜欢
    • 2018-10-11
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 2014-03-23
    • 1970-01-01
    • 1970-01-01
    • 2017-03-10
    • 2019-11-22
    相关资源
    最近更新 更多