如何使用Selenium和Python识别元素

问题描述 投票:0回答:2

我一直在忙于Selenium(Python)从事项目的工作。我被困试图单击网页的链接,因为我无法通过到目前为止找到的任何方法来检索元素。

链接是这里:

<p>
<a href="0_fr.asp?contenido=0actunor.asp" target="mainFrame"><font size="3" face="Arial" color="#CC9900">
<b>Base de datos de Disposiciones Vigentes</b></font></a>
</font>
</p>

现在,到目前为止,我已经尝试过这些东西,并且都给了我NoSuchElementException:

  1. driver.find_element_by_css_selector(“ a [href = 0_fr.asp?contenido = 0actunor.asp]”)]
  2. driver.find_element_by_css_selector('div:contains(“永续经营的人民解放军的基地”)']
  3. 与1相同,但仅将CSS选择器作为字符串复制和粘贴
  4. 使用之间的内容通过链接文本和部分链接文本>
  5. 通过使用id以防万一。
  6. 还有其他一些在其他StackOverflow问题和在线指南中找到了构建我自己的CSS选择器之类的方法,但是我不知道任何HTML或CSS,因此很难遵循它们。如果需要,我可以提供更多信息,但是由于您必须登录,因此我无法链接该网页,这是一项工作。

非常欢迎任何帮助或寻找更多信息的地方!

已解决:问题是链接在一个框架内,而在另一个框架内。我只需要使用driver.switch_to.frame(“ frameName”)两次,然后正常使用css_selector并按需工作。

我一直在忙于Selenium(Python)从事项目的工作。我无法尝试单击网页的链接,因为我无法通过发现的任何方式来检索元素...

python selenium xpath css-selectors webdriverwait
2个回答
0
投票

该元素是<a>元素,并且您将通过所有可能的方式进行交互,即单击它。理想情况下,要使用click()在任何元素上调用Selenium,您都必须为WebDriverWait引入element_to_be_clickable(),并且可以使用以下Locator Strategies之一:


0
投票

尝试以下命令。

© www.soinside.com 2019 - 2024. All rights reserved.