2014-01-08 27 views
17

我正在嘗試使用selenium web驅動程序獲取文本,這裏是我的代碼。請注意,我不想使用Xpath,因爲在我的情況下,id在每次重新啓動網頁時都會發生變化,請幫助。如何使用python中的selenium web驅動程序獲取文本

我的代碼:

text=driver.find_element_by_class_name("current-stage").getText("my text") 

簡單的HTML:

span class="current-text" id="yui_3_7_0_4_1389185744113_384">my text</span 

回答

46

你只想.text

然後,您可以驗證它後你得到它,不要試圖在你期望它應該有通過。

+0

即時得到這個錯誤 - 'webdriver的' 對象有沒有屬性 '的gettext' – user3121891

+0

@ user3121891,這是'.text'。 – Arran

+0

現在即時通訊使用此代碼: driver.find_element_by_class_name(「當前階段」)文本(「我的文字」) 如果文本: 打印「合格」 其他: 打印「失敗」 和得到這個錯誤 - 'unicode'對象不可調用 – user3121891

1

找到了,答案是

driver.find_element_by_class_name("ctsymbol").text 
3

你可以做,

element = driver.find_element_by_class_name("class_name").text 

這將返回文本,之後驗證。

2

感謝這是它的正確答案!

from selenium import webdriver 
from selenium.webdriver.support.ui import WebDriverWait 

driver = webdriver.Chrome("E:\\Python\\selenium\\webdriver\\chromedriver.exe") 
driver.get("https://www.tatacliq.com/global-desi-navy-embroidered-kurta/p-mp000000000876745") 
driver.set_page_load_timeout(45) 
driver.maximize_window() 
driver.implicitly_wait(2) 
driver.get_screenshot_as_file("E:\\Python\\Tatacliq.png") 
print ("Executed Succesfull") 
driver.find_element_by_xpath("//div[@class='pdp-promo-title pdp-title']").click()`enter code here` 
SpecialPrice =driver.find_element_by_xpath("//div[@class='pdp-promo-title pdp-title']").text 
print(SpecialPrice) 
9

的Python

element.text 

的Java

element.getText() 

C#

element.Text 

紅寶石

element.text 
相關問題