gpt4 book ai didi

python - 如何查找并单击包含多个类的按钮元素

转载 作者:太空宇宙 更新时间:2023-11-04 01:59:42 25 4
gpt4 key购买 nike

使用 python + selenium chromedriver。在登录屏幕上并尝试单击登录按钮,但我似乎无法正确识别该元素。

代码试用:

login = driver.find_element_by_css_selector('tv-button.tv-button--no-border-radius.tv-button--size_large.tv-button--primary_ghost.tv-button--loader')
click(login)

HTML:

<button type="submit" class="tv-button tv-button--no-border-radius tv-button--size_large tv-button--primary_ghost tv-button--loader">
<span class="tv-button__text">Log In</span>
<span class="tv-button__loader"><span class="tv-button__loader-item"></span><span class="tv-button__loader-item"></span><span class="tv-button__loader-item"></span></span></button>

最佳答案

毫无疑问,我们应该始终选择 css 选择器而不是 xpath。

但是您正在使用的 css 选择器:.tv-button.tv-button--no-border-radius.tv-button--size_large.tv-button--primary_ghost.tv-button--loader 看起来很不稳定。

对于登录按钮,您可以使用:

xpath : //span[contains(text(),'Log In')]/parent::button

你应该避免使用 css 选择器的原因是(在这种情况下),css 选择器是类名的组合,所以如果任何类名发生变化,你将不得不更改定位器。

在这种情况下更改类名的可能性很大。因为它由 5 个类组成。

希望这会有所帮助。

关于python - 如何查找并单击包含多个类的按钮元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55980282/

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