Selenium浏览器瞬间退出及输入失效问题的解决方法
问题解决方法
1. 修复代码语法错误
你的代码存在两处关键错误,直接导致功能失效:
- 重复书写了
find_element,正确写法是driver.find_element() - 直接传入"username"作为定位参数不合法,必须指定定位策略(比如通过ID/名称),同时需要导入
selenium.webdriver.common.by.By类
修正后的完整代码:
from selenium import webdriver from selenium.webdriver.common.by import By import time username = "ASDASD" url = "https://www.stealmylogin.com/demo.html" driver = webdriver.Chrome() driver.get(url) # 通过ID定位用户名输入框并输入内容 driver.find_element(By.ID, "username").send_keys(username) # 加入休眠防止浏览器瞬间退出 time.sleep(5) # 也可以用输入等待,手动触发关闭:input("按回车键关闭浏览器...") driver.quit()
2. 解决浏览器瞬间退出问题
脚本执行完毕后会自动终止驱动进程,导致浏览器关闭,两种常用解决方式:
- 加入休眠:用
time.sleep(秒数)让脚本暂停执行,维持浏览器打开状态 - 等待用户交互:用
input("提示文字"),直到用户按下回车再执行关闭操作
3. 确认元素定位逻辑
你之前的定位写法不符合规范,针对目标网站的用户名输入框,正确的定位方式包括:
- 通过ID定位:
By.ID, "username" - 通过名称定位:
By.NAME, "username" - 通过CSS选择器定位:
By.CSS_SELECTOR, "#username"
以上方式均可准确找到目标元素
内容的提问来源于stack exchange,提问作者buffednerdkid
相关产品推荐
相关产品推荐

