使用 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.innerHTMLwebelement 传递给该方法。

语法

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)

输出


相关文章