使用Python在Selenium WebDriver中获取WebElement的HTML源代码。


我们可以使用Selenium webdriver获取webelement的html源代码。我们可以获取**innerHTML**属性来获取web元素的源代码。

innerHTML是webelement的一个属性,它等于起始标签和结束标签之间存在的文本。**get_attribute**方法用于此目的,并将innerHTML作为参数传递给该方法。

语法

s = element.get_attribute('innerHTML')

我们可以借助Javascript Executor获取webelement的html源代码。我们将使用**execute_script**方法,并将**arguments index.innerHTML**和要检索其html源代码的**webelement**传递给该方法。

语法

s = driver.find_element_by_id("txt-search")
driver.execute_script("return arguments[0].innerHTML;",s)

让我们看看下面元素的html代码。该元素的innerHTML将是 - **您正在浏览最佳的<b>在线教育</b>资源。**

示例

使用get_attribute的代码实现。

from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe"
# implicit wait applied
driver.implicitly_wait(0.5)
driver.get("https://tutorialspoint.com/index.htm")
# to identify element and obtain innerHTML with get_attribute
l = driver.find_element_by_css_selector("h4")
print("HTML code of element: " + l.get_attribute('innerHTML'))

使用Javascript Executor的代码实现。

from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe"
# implicit wait applied
driver.implicitly_wait(0.5)
driver.get("https://tutorialspoint.com/index.htm")
# to identify element and obtain innerHTML with execute_script
l = driver.find_element_by_css_selector("h4")
h= driver.execute_script("return arguments[0].innerHTML;",l)
print("HTML code of element: " + h)

输出

更新于:2020年10月26日

12K+ 次浏览

启动您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.