如何在webdriver中获取元素的当前内容

我一定在想这个错误。

我想在我使用Webdriver / Selenium 2访问的页面上获取元素的内容(在本例中为formfield)

这是我的损坏代码:

 Element=driver.find_element_by_id(ElementID)

print Element

print Element.text

结果如下:

<selenium.webdriver.remote.webelement.WebElement object at 0x9c2392c>

(请注意空白行)我知道该元素包含内容,因为我只是使用.sendkeys使用先前的命令将它们填充在其中,并且在脚本运行时可以在实际的网页上看到它们。

但我需要将内容重新放入数据中。

我该怎么读?最好以通用方式,以便我可以从各种类型的元素中提取内容。

回答:

我相信预言是正确的。这取决于它是哪种元素。您将需要element.get_attribute('value')用于输入元素并element.text返回元素的文本节点。

您可以检查WebElement对象element.tag_name以找出它是哪种元素并返回适当的值。

这应该可以帮助您找出:

driver = webdriver.Firefox()

driver.get('http://www.w3c.org')

element = driver.find_element_by_name('q')

element.send_keys('hi mom')

element_text = element.text

element_attribute_value = element.get_attribute('value')

print element

print 'element.text: {0}'.format(element_text)

print 'element.get_attribute(\'value\'): {0}'.format(element_attribute_value)

driver.quit()

以上是 如何在webdriver中获取元素的当前内容 的全部内容, 来源链接: utcz.com/qa/426719.html

回到顶部