python - 如何通过 Selenium/Python 选择没有 ID 的 Web 元素

标签 python html selenium css-selectors

我试图在minehut.com 网页上选择一个没有ID 的元素。我发现的所有内容都说要使用 CSS 选择器,但它不起作用

我尝试选择的元素是:

<button _ngcontent-c17 color="Primary" mat-raised-button class="mat-raised-button mat-primary" style="margin-right: 10px;">

代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

#Initialize the driver and connect to the website
driver = webdriver.Chrome()
driver.get('https://minehut.com/panel/login')

#Log in
driver.find_element_by_id('mat-input-0').send_keys(<Username>)
driver.find_element_by_id('mat-input-1').send_keys(<Password> + Keys.RETURN)

#Here is the css call
for i in driver.find_elements_by_css_selector("button[color='Primary']"):
    print(i)

driver.close()

最终,该代码将与一个不和谐的机器人配对来启动/停止我的世界服务器(以及其他服务器功能) 这部分尝试找到“开始”按钮,并可能将其放入变量中

修复了语法错误

用 driver.find_elements_by_xpath() 替换 driver.find_elements_by_css_selector() 效果很好。答案解释了如何查找 Web 元素的 xpath 谢谢。

最佳答案

如果有多个框架,您可能必须切换框架。如果没有,您可以尝试 driver.find_element_by_xpath(xpath_of_element)。为了获取 xpath,您可以检查元素,然后右键单击元素中突出显示的文本,然后单击 Copy>Copy XPath

关于python - 如何通过 Selenium/Python 选择没有 ID 的 Web 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57486655/

相关文章:

html - Typescript,单击按钮时防止 Bootstrap Dropdown 关闭

JavaScript onclick 返回

java - 浏览器堆栈本地 : running BrowserStackLocal binary from source code

java - if/else 语句失败

python - 使用 setdefault 重构 Python Dicts 列表

python - Python 中 scala 的 '@transient lazy val' 最接近的实现是什么?

php - 从 PHP/SQLite 中的查询返回字符串

java - WebDriver - 捕获的屏幕截图似乎具有红色或橙色色调

python - 我们应该为一群DBA采用哪种跨平台脚本语言?

python - 我的余弦相似度有什么问题? tensorflow