使用Selenium中的find_element_by_class_name迭代多个类

时间:2011-11-27 11:58:20

标签: python selenium webdriver web-scraping

我在Python中使用Selenium webdriver进行网络抓取项目。

我正在处理的网页上有许多具有相同类名的表条目。

<table class="table1 text print">

我正在使用find_element_by_class_name。但是我收到了一个错误:

* Compound class names not permitted *

另一个问题:

如何遍历具有相同css类名的所有表?

由于

2 个答案:

答案 0 :(得分:4)

您应该使用find_elements_by_class_name。这将返回一个可迭代的对象。

答案 1 :(得分:1)

当您提供多个类名而不是一个类名时,您所描述的错误就会发生。一个简单的方法是使用CSSSelector或XPath获取元素。或者,您可以使用find_elements_by_class_name并提供一个类名,然后遍历该列表以查找与您要匹配的其他类名匹配的元素。