Python中的Webdriver - 执行JavaScript文件并将参数传递给其函数

时间:2017-07-24 10:09:29

标签: javascript python selenium-webdriver

我需要执行用JavaScript编写的函数并传递参数。

value = driver.execute_script(open("path/file.js").read())

我可以执行该文件,但我不知道如何将参数传递给该函数。 任何的想法?谢谢!

1 个答案:

答案 0 :(得分:1)

我发现我可以传递这样的论点:

value = driver.execute_script(open("path/file.js").read(), "arg1", "arg2")

但是,我不得不改变我的JavaScript功能。 现在,它看起来像是:

return (function click_on_element(path, method) {

  ...

})(arguments[0], arguments[1]);

我发现它被称为自我调用函数。现在,可以将参数传递给JavaScript函数并使用python和webdriver执行它。