selenium呼叫JS實現自動化
阿新 • • 發佈:2020-08-10
webdriver自帶的api使用起來有侷限性,比如下拉滾動條文字框輸入,以及一些彈出框的操作,使用JS直接操作方便又靈活。
一:示例
from selenium import webdriver from time import sleep dr = webdriver.Chrome() dr.get('https://www.baidu.com') dr.find_element_by_id('kw').send_keys('python') dr.find_element_by_id('su').click() sleep(2) js = "window.scrollTo(100,450);" dr.execute_script(js) sleep(2) dr.quit()
以上示例操作百度搜索結果頁面的滾動條往下拉。
二:示例
from selenium import webdriver from time import sleep dr = webdriver.Chrome() dr.get('https://www.baidu.com') js1 = "document.querySelector('#kw').value='python'" js2 = "document.querySelector('#su').click()" dr.execute_script(js1) dr.execute_script(js2) sleep(2) js3 = "window.scrollTo(100,450);" dr.execute_script(js3) sleep(2) dr.quit()
元素定位也可以採用JS語句,這樣直接在瀏覽器的F12進行驗證後方便直接使用,具體如何驗證請檢視我的其他文章。