当前位置: 首页 > 知识库问答 >
问题:

Python以及如何从Selenium元素WebElement对象获取文本?

颛孙森
2023-03-14

我试图使用Selenium方法获取html页面中的标记文本内容,但似乎是methodsomeElement。getText()在Python中不可用。需要帮忙吗?

以下是回溯:

AttributeError: 'WebElement' object has no attribute 'getText'

共有3个答案

秦建元
2023-03-14

我的任务是在目标标记之间提取文本,但x.text方法对我不起作用。这是因为一些文本被保存为不可见元素。对于不可见元素,请使用:

list1 = [x.get_attribute("innertext") for x in driver.find_element_by_xpath(xpath)]
print(list1)
祁高格
2023-03-14

硒从元素获取文本(只需添加. text)

对于列表中的所有元素

tree = browser.find_elements_by_xpath(<the_XPATH>)
for i in tree:
   print(i.text) 

[]按数字取回

 tree = browser.find_elements_by_xpath(<the_XPATH>)
 print(tree[0].text) 
胡璞瑜
2023-03-14

找到元素后,可以使用text属性。

例子:

for element in self.driver.find_elements_by_tag_name('img'):
       print element.text
       print element.tag_name
       print element.parent
       print element.location
       print element.size
 类似资料:
  • 问题内容: 我正在尝试通过使用Selenium方法来获取html页面中的标记文本内容,但似乎该方法在Python中不可用。有什么帮助吗? 追溯: 问题答案: 一旦找到元素,就可以使用文本方法。 例:

  • 问题内容: 请参阅以下元素: 找到我的元素: 因此,找到后并使用带有selenium 或return 的文本: 所以我的问题是如何只获得没有这一点的最后一行 问题答案: 所需的文本出现在文本节点中,并且无法直接使用Selenium检索,因为它仅支持元素节点。 您可以删除开头: 您还可以使用正则表达式从中提取所需的内容: 或使用一段JavaScript:

  • 请参阅以下元素: 找到我的元素: 因此,在找到这个并使用selenium和或获取文本后,返回: 所以我的问题是如何只得到最后一行没有这个

  • 问题内容: 我正在使用object标签在html页面中加载html代码段。 我的代码遵循以下原则: 如预期的那样,页面加载后,在对象标记之间添加了一些元素。我想获取这些元素,但似乎无法访问它们。 我尝试了以下 这些似乎都不起作用。有没有其他方法可以获取这些元素? 编辑: 更详细的示例: 考虑这个 如果我尝试在对象中获取html,则会得到一个空字符串。 问题答案: 只要将其放在同一域上,就可以执行以

  • 问题内容: 这是我从Selenium WebElement获得价值的测试代码。 结果就是这样,这需要很长时间。我想快点。 1.跳过一些元素 如果价值不是我想要的。跳过以(继续)获得另一个获取值。 2.通过xpath过滤 此示例获取所有元素(// *)。因此,当我得到它时,我过滤了元素,这是个好方法。但是我仍然有几百个要素,我需要最小化处理时间。 3,多线程 我测试了Runnable Callabl

  • 问题内容: 是否可以仅从父元素而不是Selenium中的子元素获取文本? 示例:假设我有以下代码: 用C#(或任何语言),我将有: 但是,链接文本将带有“ Google Link此链接会将您带到Google主页”。 如果不进行大量的字符串操作(例如获取所有子项的文本并从父项的结果文本中减去该文本),是否有办法从父项元素中仅获取文本? 问题答案: 这是一个常见的问题,因为您无法直接访问文本节点- 换