python - 为什么 text、innerText、innerHTML 在 selenium 中返回空

标签 python css selenium selenium-webdriver xpath

<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/

相关文章:

html - CSS 在孙子中选择第一个类型?

python - 从新闻网站中提取用户评论

css - 导航栏问题

java - 如何在 Selenium IDE 中为 Web 目标选择正确的操作

java - 如何使用网络驱动程序关闭网页上的模式对话框 - Java

python - 使用 Pool.map() 将函数作为参数传递给进程目标

python - 如何拆分返回的整数: (Trying to find recurrences within it)

python - 使用多个分隔符和条件拆分字符串

python - 无法正确定义 LSTM 的输入以建模多对一场景

css - 将类 (fancybox) 分配给 SVG 元素