当前位置: 首页 > 面试题库 >

Selenium和Python查找元素和文本?

谢清野
2023-03-14
问题内容

当我转到某个网页时,我正在尝试查找某个元素和一段文本:

<span class="Bold Orange Large">0</span>

这不起作用:( 它给出了复合类名的错误…)

elem = browser.find_elements_by_class_name("Bold Orange Large")

所以我尝试了这个:( 但是我不确定它是否有效,因为我不太了解在selenium中使用CSS选择器的正确方法…)

elem = browser.find_elements_by_css_selector("span[class='Bold Orange Large']")

找到span元素后,我想找到其中的数字 (内容)

num = elem.(what to put here??)

CSS选择器,类名和查找元素文本的任何帮助都将非常有用!

谢谢。

哦! 我的另一个问题是,其中有多个确切的span元素,但内部有不同的数字。我该如何处理?


问题答案:

您想要: elem.text 获得“里面的数字”。

说明:

在您的示例中,elem是webdriver
WebElement类的实例(来自selenium.webdriver.remote.webelement)

WebElement实例具有多个属性,包括:

  • tag_name
  • text
  • size
  • location
  • parent
  • id

.text 属性包含“内容”

“而且我的另一个问题是,这些确切的跨度元素有多个。我该如何处理?”

请不要一口气问几个问题..它不适用于SO的格式。

但基本上,使用find_elements_*代替find_element_*。然后,您的定位器可以返回匹配WebElement实例的列表,而不是单个匹配实例的列表……您可以对其进行进一步过滤。



 类似资料:
  • 问题内容: 我正在寻找网站。在检查元素中看到以下内容: 需要获取并按标题单击元素。像这样: 但是通过标题。 问题答案: 就像巴拉克·马诺斯(Barak Manos)所说,答案是: 以[0]结尾的情况是列表。

  • 我一直在尝试在网页上查找一个元素,该元素与其他元素同名,没有id。它确实有不同的值,因此我希望通过名称和值查找该元素。 在我的网页我有一个搜索按钮: 我不能使用name,因为我有另一个具有相同名称和类型的元素: 因此,我尝试使用xpath,我开始使用xpath检查器返回返回的xpath: 这又是一个非常新的,但我假设“x:”不应该在路径中,所以我删除了这个,并试图找到以下元素: 这导致: 所以我真

  • 我一直在忙着自动化这个选项页面,因为它提供了各种选项,每个选项都有自己的子选项,所以我不想花时间通过它们的xpath(或CSS)标识和声明所有元素。因此,我有一个可靠的代码,可以很好地找到HTML标记中的文本标识符。 通过运行这个,我得到一个打印输出,就像 > 里程数 等等。所以嘣!我知道它们已经被识别,但我的e.click()实际上并没有点击。当我开始测试时,我没有得到任何错误,它只是说它通过了

  • 我试图使用Selenium和Python自动化一些测试。我使用Selenium IDE创建了一个套件,它工作得很好。 我现在试图在Python脚本中重新创建这个套件,但遇到了一个问题。 使用XPATH代替ID 使用隐式等待 使用从IDE导出到Python生成的函数 使用WebDriverWait 以下是IDE中的html定义: 使用隐式等待的Python脚本。所有工作都很好,直到最后一行中的冒犯元

  • 问题内容: 我想找到相应的span元素。我想使用css选择器检查span元素的顺序。因此,当我使用Selenium IDE时,我将按照以下方式进行验证(使用第n个子概念)。 verifyText | css = .title:nth(0)| 首页 verifyText | css = .title:nth(1)| 帖子 verifyText | css = .title:nth(2)| 事件 ve

  • 我尝试使用Python selenium(新的)做一些自动化。不幸的是,检查特定网页的元素不仅仅是困难的。没有id可以使用,我尝试xpath。我想选择一个下拉列表,我检查这个元素,然后复制xpath,它是//*[@id="frmMain:purchase_criteria_tab"]/div[13]/div[1]/div/按钮 我的代码是: 我不明白这个元素有什么想法吗?提前谢谢你。