Selenium文件上传_selenium driver 用input只输入,不发送,而不用sendkeys
在 Web 自动化测试中,文件上传是一项常见的任务。不同的网站和前端技术可能导致上传方式有所不同,因此需要采用不同的方法进行处理。
方法 1:使用 send_keys()
直接上传(最常用)
适用场景:
-
页面中 有标准的
标签。
-
不需要弹出 Windows 文件选择对话框,直接选中文件即可上传。
from selenium import webdriverfrom selenium.webdriver.common.by import By# 启动 WebDriverdriver = webdriver.Chrome()driver.get(\"http://127.0.0.1:9580/index.html\") # 替换为你的论坛系统地址# 定位文件上传按钮(input[type=\'file\'])file_input = driver.find_element(By.NAME, \"file\") # 这里的 name 需要替换为实际 HTML 代码中的 name 值file_input.send_keys(\"C:\\\\Users\\\\你的用户名\\\\Desktop\\\\test.jpg\") # 直接输入文件路径# 提交文件(如果有独立的提交按钮)driver.find_element(By.ID, \"upload_button\").click()# 关闭浏览器driver.quit()
优点:
- 简单易用,Selenium 原生支持
- 适用于大多数 Web 应用,不需要额外工具