2014-03-13 79 views
1

这里是我的代码:蟒蛇硒 - 打印的XPath值

print browser.find_element_by_xpath('/html/body/div[2]/div/div/div/h1/div/small') 

它打印<selenium.webdriver.remote.webelement.WebElement object at 0x02915310> 但我想它打印的实际值,这将是0.00

任何想法?

回答

3

这应该为你工作的内部文本:

print browser.find_element_by_xpath('/html/body/div[2]/div/div/div/h1/div/small').text 

或者,如果你想获得的价值:

print browser.find_element_by_xpath('/html/body/div[2]/div/div/div/h1/div/small').get_attribute("value"); 
+0

太棒了,谢谢你的帮助! – user3196332

1

当你找到一个元素,你不觉得元素的文本,但实际上更多。它是一个WebElement python对象,它有许多有用的操作和与之相关的值。

所以一个元素是通过调用text属性中找到的文本就是你目前正在寻找

browser.find_element_by_xpath('/ HTML /体/ DIV [2]/DIV/DIV/DIV/H1/DIV /小')

我们得到与browser.find_element_by_xpath('/html/body/div[2]/div/div/div/h1/div/small')

的WebElement但对于文本,我们使用browser.find_element_by_xpath('/html/body/div[2]/div/div/div/h1/div/small').text

,我猜你会想,作为一个浮点值的工作,所以10的float(browser.find_element_by_xpath('/html/body/div[2]/div/div/div/h1/div/small').text)

但还有更多你可以看看在其他WebElements一个WebElement,像

foo = browser.find_element_by_xpath('/html/body/p') 
bar = foo.find_element_by_xpath('/input') 
baz = foo.find_element_by_xpath('button') 

,你可以做这样的事情bar.get_attribute('name')这将返回一个字符串或bar.send_keys('good stuff')baz.click()

该文件可以在这里找到

http://selenium-python.readthedocs.org/en/latest/api.html#module-selenium.webdriver.remote.webelement