ASm*_*h78 4 javascript python firefox selenium selenium-webdriver
我正在尝试textarea使用javascript而不是send_keys()方法设置值.
正如文档所说,我应该能够将webelement传递给execute_script作为参数,并通过arguments数组引用此参数.但是,我已经检查了firefox js控制台,即argumentsObject,它与execute_script参数的关系并不重要 - arguments始终是一个空对象.
>>>> web = webdriver.Firefox()
>>>> web.get("http://somepage.com")
>>>> element = web.find_element_by_tag_name("textarea")
>>>> web.execute_script("return typeof(arguments)", element)
u'object'
>>> web.execute_script("return arguments",element)
[]
Run Code Online (Sandbox Code Playgroud)
任何人都有类似主题的经验吗?如何将webElement作为javascript的参数?
使用Firefox 35.0,selenium 2.44.0.
以下是相关的错误:Firefox 35:将参数传递给executeScript不起作用.
这是在今天发布的硒2.45中修复的,升级硒包:
pip install --upgrade selenium
Run Code Online (Sandbox Code Playgroud)
老答案:
我能够使用selenium==2.44.0和重现问题Firefox 35.0:
>>> element = web.find_element_by_tag_name('textarea')
>>> web.execute_script("return arguments",element)
[]
Run Code Online (Sandbox Code Playgroud)
降级以Firefox 34.0.5解决问题:
>>> element = web.find_element_by_tag_name('textarea')
[<selenium.webdriver.remote.webelement.WebElement object at 0x1022d1bd0>]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1272 次 |
| 最近记录: |