You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python Selenium获取未存储在HTML代码中的input文本内容

问题解决方法

核心原因

input元素的动态填充内容不会存储在HTML节点的文本字段中,而是存放在value属性里,因此直接读取元素的text属性无法拿到对应内容。

具体操作

你之前的元素定位逻辑是正确的,只需要修改取值的方法即可:

  • 先点击「Show Answer」按钮,等待内容填充完成
  • 对定位到的input元素调用get_attribute("value")获取内容

完整代码示例

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()
driver.get("https://www.w3schools.com/html/exercise.asp?filename=exercise_html_tables6")

# 点击显示答案按钮
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "showanswerbtn"))).click()

# 提取input内容
input_elem = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, ".editablesection")))
target_text = input_elem.get_attribute("value")
print(target_text)

driver.quit()

如果你使用的是旧版Selenium,也可以直接沿用你原来的定位写法:

input = driver.find_element_by_css_selector(".editablesection")
target_text = input.get_attribute("value")

内容的提问来源于stack exchange,提问作者Ismael Córdoba Rodríguez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 13:15:07