如何使用 Python 和 Selenium 从表格中获取特定单元格的值(例如第二行第二列)?


我们可以从 Selenium 中表格的特定单元格(例如第二行第三列)中提取值。首先,我们需要使用 xpath 定位器找到该单元格。

由于给定了行号和列号,我们可以使用 <tr> 和 <td> 标记指定的索引创建一个自定义 xpath。表格的行在 html 代码中由 <tr> 标记表示。每行中的数据在 html 中用 <td> 标记括起来。因此,<td> 标记的父级始终是 <tr> 标记。

因此,要获取第二行第二列的值,我们必须将行指定为 tr[2],第三列将被识别为 td[2]。

语法

driver.find_element_by_xpath("//table/tbody/tr[2]/td[2]")

表格标题的 html 代码片段如下所示:

示例

获取第二行第二列值的代码实现。

from selenium import webdriver
#browser exposes an executable file
#Through Selenium test we will invoke the executable file which will then
#invoke actual browser
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
# to maximize the browser window
driver.maximize_window()
#get method to launch the URL
driver.get("https://tutorialspoint.com/plsql/plsql_basic_syntax.htm")
#to refresh the browser
driver.refresh()
# to get the data from 2nd row and 2nd column directly
val = driver.find_elements_by_xpath("//table/tbody/tr[2]/td[2]").text
# print the value in console
print(val)
#to close the browser
driver.close()

更新于:2020-07-29

2K+ 阅读量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告