使用 Python 获取 Selenium WebDriver 中 WebElement 的 HTML 源代码。
seleniumautomation testingtesting toolshtmlpython
我们可以使用 Selenium webdriver 获取 webelement 的 html 源代码。我们可以获取 innerHTML 属性来获取 web 元素的源代码。
innerHTML 是 webelement 的一个属性,它等于起始和结束标记之间的文本。get_attribute 方法用于此目的,innerHTML 作为参数传递给该方法。
语法
s = element.get_attribute('innerHTML')
我们可以借助 Javascript Executor 获取 webelement 的 html 源代码。我们将利用 execute_script 方法,并将要检索其 html 源的 arguments index.innerHTML 和 webelement 传递给该方法。
语法
s = driver.find_element_by_id("txt-search") driver.execute_script("return parameters[0].innerHTML;",s)
让我们看看元素的以下 html 代码。元素的 innerHTML 应为 − 您正在浏览<b>在线教育</b>的最佳资源。
示例
使用 get_attribute 实现代码。
from selenium import webdriver driver = webdriver.Chrome(executable_path="C:\chromedriver.exe" # 隐式等待已应用 driver.implicitly_wait(0.5) driver.get("https://www.tutorialspoint.com/index.htm") # 识别元素并使用 get_attribute 获取 innerHTML l = driver.find_element_by_css_selector("h4") print("元素的 HTML 代码:" + l.get_attribute('innerHTML'))
使用 Javascript Executor 实现代码。
from selenium import webdriver driver = webdriver.Chrome(executable_path="C:\chromedriver.exe" # 隐式等待已应用 driver.implicitly_wait(0.5) driver.get("https://www.tutorialspoint.com/index.htm") # 使用 execute_script 识别元素并获取 innerHTML l = driver.find_element_by_css_selector("h4") h= driver.execute_script("return arguments[0].innerHTML;",l) print("HTML code of element: " + h)