from pyvirtualdisplay import Display
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
display = Display(visible=0, size=(800, 600))
display.start()
driver = webdriver.Firefox()
driver.get('http://www.espn.go.com')
driver.implicitly_wait(10)
print driver.find_element_by_class_name("timestamp")
driver.quit()
display.stop()
我的结果是
<selenium.webdriver.remote.webelement.WebElement (session="7b9bac74-fc4e-436f-ba2b-f723bc1e4abd", element="{e91179d6-990c-463f-b56b-a2a38fabecdb}")>
而不是时间戳:例如:3h
它对所有事情都这样做,我得到了那个奇怪的会话和元素代码,而不是实际的文本。即使我更改为另一个元素或尝试其他网站。另外,即使我使用print driver.find_element_by_xpath("//*[@class='timestamp']")
您看到打印的是WebElement
对象字符串表示形式。 当您在 Python-Selenium 中调用任何find_element_by_*
方法时,都会返回WebElement
实例。
相反,你的意思是得到text
:
driver.find_element_by_class_name("timestamp").text