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

Python Selenium无法定位typetest.io的test-input输入框该如何解决

问题解决方案

你遇到的问题主要由三点原因导致,对应解决方法如下:

问题原因&修复点

  • Selenium版本方法废弃
    Selenium 4.0及以上版本已经移除了find_element_by_id()这类直接定位方法,现在统一使用find_element()方法,需要先导入By类指定定位策略。
  • 输入方法名错误
    Python Selenium的元素输入方法是send_keys(),你代码里写的sendKeys()是Java Selenium的写法,大小写和命名不符合Python接口规范。
  • 缺少元素加载等待
    页面打开后DOM元素渲染需要时间,直接执行定位操作会因为元素还没加载完成触发找不到元素的报错,需要添加显式等待逻辑保证元素可被定位后再操作。

修正后可运行代码

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
# 新增导入By类和显式等待相关类
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chrome_options = Options()
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
driver = webdriver.Chrome(options=chrome_options)
driver.get("https://typetest.io/")

# 最多等待10秒,直到test-input元素加载完成可被定位
wait = WebDriverWait(driver, 10)
element = wait.until(EC.presence_of_element_located((By.ID, "test-input")))
# 使用正确的Python输入方法
element.send_keys("Hello")

内容的提问来源于stack exchange,提问作者user16334850

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 10:27:04