有没有一种更有效的方法来读取同名的类,而不是像我所做的那样,我基本上是通过一个带有索引的代码,因为它们都有相同的名称,如果选择具有相同类名的元素,有没有更好的方法,而不是像我这样做
Z = len(driver.find_elements_by_class_name('Class_With_Names'))
for x in range(Z):
x += 1
thisClass = driver.find_element_by_xpath(f"//ul[@class='same_name']/div[{str(x)}]")
classText = thisClass.find_element_by_class_name("class_with_text")
print(classText.text)
避免使用索引可以使用以下Locator Strategy:
要使用Selenium和python从所有
<li class="Fruit">
中提取和打印文本,例如苹果、橙色等,您可以使用以下任一Locator Strategies:使用
css_selector
和get_attribute("innerHTML")
:使用
xpath
和文本属性:理想情况下,您需要为
visibility_of_all_elements_located()
诱导WebDriverWait,并且您可以使用以下任一Locator Strategies:使用
CSS_SELECTOR
和get_attribute("innerHTML")
:使用
XPATH
和文本属性:注意:您必须添加以下导入:
奥特罗
链接到有用的文档:
Gets the given attribute or property of the element.
The text of the element.
您是否尝试过通过xpath使用find_元素s\u?这将返回具有该类名的所有元素
您的代码看起来好像在div之后递增?您是在寻找所有类的信息还是在div中循环
相关问题 更多 >
编程相关推荐