使用Python在Selenium中執行Javascript。
我們可以使用Python在Selenium webdriver中執行Javascript。文件物件模型 (DOM) 透過Javascript與頁面上的元素進行通訊。Selenium藉助**execute_script**方法執行Javascript命令。要執行的命令作為引數傳遞給該方法。
一些操作,例如頁面向下滾動,無法直接透過Selenium方法執行。這可以透過**Javascript執行器**來實現。**window.scrollTo**方法用於執行滾動操作。沿x軸水平滾動的畫素和沿y軸垂直滾動的畫素作為引數傳遞給該方法。
語法
driver.execute_script("window.scrollTo(0,document.body.scrollHeight);")示例
滾動到頁面底部的程式碼實現
from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
driver.implicitly_wait(0.5)
driver.get("https://tutorialspoint.tw/tutor_connect/index.php")
# to scroll till page bottom
driver.execute_script("window.scrollTo(0,document.body.scrollHeight);")我們還可以使用Selenium中的Javascript執行器執行諸如單擊連結之類的Web操作。我們將使用**execute_script**方法,並將**argument index.click()**和要單擊的**webelement**作為引數傳遞給該方法。
語法
s = driver.find_element_by_css_selector("#id")
driver.execute_script("arguments[0].click();",s)示例
執行諸如單擊之類的Web操作的程式碼實現。
from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
driver.implicitly_wait(0.5)
driver.get("https://tutorialspoint.tw/index.htm")
# to identify element and then click
s = driver.find_element_by_xpath("//*[text()='Library']")
# perform click with execute_script method
driver.execute_script("arguments[0].click();",s)
print("Page title after click: " + driver.title)輸出

廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP