在Selenium / PhantomJS上执行Javascript
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Selenium / PhantomJS上执行Javascript相关的知识,希望对你有一定的参考价值。
我在Python中使用qlenxswpoi通过Selenium Webdriver,我试图在页面上执行一段javascript,希望返回一段数据:
PhantomJS
但是在运行时,它会报告from selenium import webdriver
driver = webdriver.PhantomJS("phantomjs.cmd") # or add to your PATH
driver.set_window_size(1024, 768) # optional
driver.get('http://google.com') # EXAMPLE, not actual URL
driver.save_screenshot('screen.png') # save a screenshot to disk
jsres = driver.execute('$("#list").DataTable().data()')
print(jsres)
。我无法找到有关可用命令的大量文档,所以我有点卡在这里。
为执行javascript而创建的方法称为KeyError
,而不是execute_script()
:
execute()
仅供参考,driver.execute_script('return $("#list").DataTable().data();')
在内部用于发送webdriver命令。
请注意,如果您想要javascript代码返回的内容,则需要使用execute()
。
另请注意,这可能会抛出return
错误消息。在这种情况下,使用Can't find variable: $
找到元素并将其传递给脚本:
selenium
以上是关于在Selenium / PhantomJS上执行Javascript的主要内容,如果未能解决你的问题,请参考以下文章
selenium在执行phantomjs的API并获取执行结果
爬虫之动态HTML处理(Selenium与PhantomJS )执行 JavaScript 语句
Casperjs/PhantomJs vs Selenium