Saya mencoba mendapatkan teks menggunakan Selenium WebDriver dan ini kode saya. Harap dicatat bahwa saya tidak ingin menggunakan XPath, karena dalam kasus saya ID berubah pada setiap peluncuran ulang halaman web.
Kode saya:
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>
Bagaimana cara memperbaikinya?
Jawaban:
Anda hanya ingin
.text
.Anda kemudian dapat memverifikasinya setelah Anda mendapatkannya, jangan mencoba untuk meneruskan apa yang Anda harapkan .
sumber
.text
.driver.find_element_by_class_name("current-stage").text
.... cukup kirim teks saja. Tidak ada yang lain..text
pada setiap item dari perulangan for.Python
Jawa
C #
Rubi
sumber
.
setelah elemen di VSCode, Anda akan diberi daftar saran berdasarkan apa yang diterima kelas. Begitulah cara saya menemukan ini.Jawabannya adalah:
driver.find_element_by_class_name("ctsymbol").text
sumber
Kamu dapat memakai:
element = driver.find_element_by_class_name("class_name").text
Ini akan mengembalikan teks di dalam elemen dan memungkinkan Anda untuk memverifikasinya setelah itu.
sumber
Ini jawaban yang benar. Berhasil !!
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 Successfully") driver.find_element_by_xpath("//div[@class='pdp-promo-title pdp-title']").click() SpecialPrice = driver.find_element_by_xpath("//div[@class='pdp-promo-title pdp-title']").text print(SpecialPrice)
sumber
Saya telah menemukan ini benar-benar sangat berharga ketika tidak dapat mengambil sesuatu di kelas khusus atau mengubah id:
driver.find_element_by_xpath("//*[contains(text(), 'Show Next Date Available')]").click() driver.find_element_by_xpath("//*[contains(text(), 'Show Next Date Available')]").text driver.find_element_by_xpath("//*[contains(text(), 'Available')]").text driver.find_element_by_xpath("//*[contains(text(), 'Avail')]").text
sumber
.click()
perlu? Mengapa ada tiga baris dengan.text
?