WebDriver有两个方法来执行JavaScript,分别是:
- execute_script 同步执行
- execute_async_script 异步执行
比较常见的应用是操作滚动条,代码如方法test4所示:
from selenium import webdriver
from time import sleep
class TestCase(object):
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://www.baidu.com')
def test2(self):
js = 'return document.title'
title = self.driver.execute_script(js)
print(title)
def test4(self):
self.driver.find_element_by_id('kw').send_keys('selenium')
self.driver.find_element_by_id('su').click()
sleep(2)
js = 'window.scrollTo(0, document.body.scrollHeight)'
self.driver.execute_script(js)
sleep(2)
if __name__ == '__main__':
case = TestCase()
case.test4()