gpt4 book ai didi

python - 遍历 Selenium 中的表行(Python)

转载 作者:太空狗 更新时间:2023-10-29 20:43:23 26 4
gpt4 key购买 nike

我有一个带有表格的网页,该表格仅在我单击“检查元素”时出现,并且在“查看源代码”页面中不可见。该表仅包含两行,每行有几个单元格,看起来类似于:

<table class="datadisplaytable">
<tbody>
<tr>
<td class="dddefault">16759</td>
<td class="dddefault">MATH</td>
<td class="dddefault">123</td>
<td class="dddefault">001</td>
<td class="dddefault">Calculus</td>
<td class="dddefault"></td>
<td class="dddead"></td>
<td class="dddead"></td>
</tr>
<tr>
<td class="dddefault">16449</td>
<td class="dddefault">PHY</td>
<td class="dddefault">456</td>
<td class="dddefault">002</td>
<td class="dddefault">Physics</td>
<td class="dddefault"></td>
<td class="dddead"></td>
<td class="dddead"></td>
</tr>
</tbody>
</table>

我想做的是遍历行并返回每个单元格中包含的文本。我似乎无法用 Selenium 做到这一点。这些元素不包含 ID,我不确定如何获取它们。我不太熟悉使用 xpaths 等。

这是一个返回 TypeError 的调试尝试:

def check_grades(self):
table = []
for i in self.driver.find_element_by_class_name("dddefault"):
table.append(i)
print(table)

从行中获取文本的简单方法是什么?

最佳答案

XPath 很脆弱。最好使用 CSS 选择器或类:

mytable = find_element_by_css_selector('table.datadisplaytable')
for row in mytable.find_elements_by_css_selector('tr'):
for cell in row.find_elements_by_tag_name('td'):
print(cell.text)

关于python - 遍历 Selenium 中的表行(Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37090653/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com