仅在具有selenium的particualr“id”中按“class”查找元素

2024-10-02 18:22:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我对刮削和;我试图从一个简单的静态网页中获取数据。 网页按表格排列;我只想从id'Table1'(图片中的红色矩形)中获取数据。然而,我无法做到这一点

我想要'LabelColumn'的内容DataColumn”,但仅在“Table1”中 当我做find_elements_by_class_name("LabelColumn")&driver.find_elements_by_class_name("DataColumn")我得到'LabelColumn'&;'整个页面的数据列数据;这不是我想要的(它会创建不必要的数据&;需要更多的时间)。 有谁能指导怎么做吗?我试图查找xpath,但我得到的错误项目不存在,我认为我做错了什么

蓝色矩形仅显示两个“LabelColumn”&;'“Table1”中的“DataColumn”。在绿色的矩形里面有更多的这些。我把它们折叠起来以缩小图片的大小)

enter image description here

更新 尝试代码(这仍然提供整个页面的内容;not jsut元素“Table1”的内容

table1 = driver.find_element_by_id("Table1")
labels = table1.find_elements_by_xpath(".//td[@class='LabelColumn']")
contents = table1.find_elements_by_xpath(".//td[@class='DataColumn']")

Tags: 数据id网页内容byelementsfindxpath
1条回答
网友
1楼 · 发布于 2024-10-02 18:22:01

您可以使用下面的xpath

//table[@id='Table1']//td[@class='LabelColumn']
//table[@id='Table1']//td[@class='DataColumn']

或以下css

table[id='Table1'] .LabelColumn
table[id='Table1'] .DataColumn

相关问题 更多 >