【发布时间】:2017-05-31 08:36:54
【问题描述】:
我想从一个页面获取用户名,但由于某种原因,我无法正常工作..
浏览互联网和其他 Stackoverflow 帖子后;我认为问题在于@class 中有空格,而且它不起作用。然后我找到了另一种方式的解决方案,但问题是在第一节课之后,我也想去第二节课,这是我知道我可以用find_elements_by_xpath做到的唯一方法。
Picture to inspect element of what I want to get
在这张图片中,“text”是它应该废弃的用户名之一。
我的代码:
usernames = driver.find_elements_by_xpath("//a[@class='kik-widget card card-just-text card-with-shadow']//h3[@class='kik-widget-text-muted']")
usernames2 = [x.text for x in usernames]
print(usernames2)
非常感谢任何帮助。
【问题讨论】:
-
从您的输入中找到了 h3 元素,您还想与您的 XPath 完全匹配什么?
-
我希望它打印用户名,在这种情况下是“文本”。
-
您的代码中是否有多个 h3 标签。您可以轻松使用 find_element_by_tagname() 方法并检查 getText() 方法以从那里获取文本。
-
是的,代码中有更多的 h3 标签,find_element_by_tagname() 不是我可以去这里的选项,因为在原始帖子中还有一个 xpath,一切都一样,只是有也在课堂上提升,这就是为什么我想排除它并直接通过那个 xpath 获取,
标签: python python-3.x selenium selenium-webdriver xpath