如何使用python 3.7和Selenium Webdriver遍历具有不同类名的<div>元素?

时间:2019-07-30 13:45:32

标签: html selenium python-3.7

我正在尝试制作一个reddit机器人,该机器人可以为我提供有关我的个人资料和 现在我必须找出我的哪一条评论受到最多的赞。

所有注释都在具有不同且随机类名的元素内,但是在这些内部,我发现总有一个类名开头为“ comment t1_”的元素,然后是随机字符。

所以我想做一个循环,可以循环访问源代码中的每个元素,并检查类名中是否包含“ comment t1 _”。

然后我才发现方法“ find_element_by_class_name”已经过时,不再可用。

类名称是访问页面中元素的唯一方法,因为xpath太长且几乎是随机的。以下是我遇到的两个共同之处:

1)//[@id='SHORTCUT_FOCUSABLE_DIV']/div[2]/div/div/div/div[2]/div[4]/div[1]/div/div[1]/div/div/div[2]/div/div

2)//[@id="SHORTCUT_FOCUSABLE_DIV"]/div[2]/div/div/div/div[2]/div[4]/div[1]/div[1]/div[3]/div/div/div[2]/div/div

这些是s中包含“注释t1_”的xpath。

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

您可以使用以下xpath查找要素:

//div[contains(@class, 'comment t1_')]

PS:您始终可以使用find_element_by_class_name。如果您可以粘贴所遇到的错误,以便我们可以帮助您解决问题,那将是很好的选择。