运行 javascript 带有 selenium chrome 驱动程序的文件

Run javascript file with selenium chrome driver

按照入门指南,我可以使用 driver.execute() 运行 一个 javascript 片段。我怎样才能 运行 外部 javascript 文件,它自己加载一些外部模块。

我能想出的可能方法:

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

  2. 执行一个小片段来加载所有需要的 js 文件。

  3. 也许在浏览器渲染之前修改 html?

有什么建议吗?

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

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

第一个 link 在 Python 中有一个工作示例,第二个在 Java 中有一个工作示例。