<div class="SdTitle-sc-iwgcvh dmugDV title">#24 Information Revolution</div>
我想获取这个div中的文本。我正在使用这段代码:
title = driver.find_element_by_xpath("/html/body/div/div[2]/div[4]/div/div[2]/div[1]/div/div[1]").get_attribute("innerText")
但它返回一个空字符串,我尝试了 text()
、get_attribute("innerText")
、get_attribute("innerHTML")
。它们都不起作用。
该元素可以通过 Selenium 找到。 我在chrome中也发现了这个元素带有xpath,这说明xpath是正确的。
如果我尝试get_attribute('outerHTML')
,它会返回
<div class="SdTitle-sc-iwgcvh dmugDV title"></div>
这太奇怪了。
我在Chrome上搜索发现这些类的div只有1个。
感谢您的帮助。
最佳答案
您正在使用 text()
而不是 .text
不存在所谓的get_attribute("innerText")
更新1:
el = WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "div[class^='SdTitle']"))).text
print(el)
关于python - 为什么 text、innerText、innerHTML 在 selenium 中返回空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67672861/