web-dev-qa-db-fra.com

Comment obtenir du texte avec le pilote Web Selenium dans python

J'essaie d'obtenir du texte avec le pilote Web Selenium et voici mon code. Veuillez noter que je ne souhaite pas utiliser Xpath, car dans mon cas, l'identifiant est modifié à chaque relance de la page Web, merci de l'aide.

mon code:

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>
53
user3121891

Vous voulez juste .text.

Vous pouvez alors le vérifier après vous l'avez, n'essayez pas de transmettre ce que vous attendez il devrait l'être.

101
Arran

Python

element.text

Java

element.getText()

C #

element.Text

Ruby

element.text

Exemple (en Python):

element=driver.find_element_by_class_name("nameOfClass")
print(element.text)

OR

driver.find_element_by_class_name("nameOfClass").text

Exemple (en Java):

WebElement element= driver.findElement(By.id(WebelementID));
System.out.println("Printing " + element.getText());

OR

driver.findElement(By.id(WebelementID)).getText();
44
Shubham Jain

Trouvé, la réponse est

driver.find_element_by_class_name("ctsymbol").text
5
rearThing

Vous pouvez utiliser:

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

Cela renverra le texte dans l'élément et vous permettra de le vérifier par la suite.

4
kishlaya kumar

Merci c'est la bonne réponse cela a fonctionné !!

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)
3
subhasis