武漢做營銷型網(wǎng)站建設(shè)寫手接單平臺
????????JavaScript簡稱JS,有的測試場景需要JS腳本輔助完成Selenium無法做到的測試工作。webdriver提供了execute_script()方法調(diào)用JS代碼。execute_script()可以在當(dāng)前窗口/框架中執(zhí)行JS腳本,并返回結(jié)果。可以使用它操作DOM元素、獲取元素屬性、執(zhí)行異步操作等。
from selenium import webdriver
from selenium.webdriver.common.by import By
import time# 初始化 WebDriver
driver = webdriver.Chrome()
driver.get("https://www.baidu.com")
獲取頁面標(biāo)題
title = driver.execute_script("return document.title;")
print(f"Page title is:{title}")
查找搜索輸入框并輸入關(guān)鍵字
search_input = driver.find_element(By.ID, "kw")
driver.execute_script("arguments[0].value = 'Selenium';", search_input)
?查找搜索按鈕并點擊
search_button = driver.find_element(By.ID, "su")
driver.execute_script("arguments[0].click();", search_button)
滾動到頁面底部
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
改變搜索框背景顏色
driver.execute_script("arguments[0].style.backgroundColor = 'blue';", search_input)
?獲取第一個搜索結(jié)果的鏈接文本
first_result_text = driver.execute_script("return document.querySelector('.t a').innerText;")
?獲取第一個搜索結(jié)果的鏈接
first_result_url = driver.execute_script("return document.querySelector('.t a').href;")
?獲取網(wǎng)頁源代碼
page_source = driver.execute_script("return document.documentElement.outerHTML;")
print(f"Page source length:{len(page_source)}")
刷新頁面
driver.execute_script("location.reload();")