selenium自动化测试-文件上传

文件上传

  1. 直接通过send_key上传
  2. 通过点击win窗口上传

直接通过send_key上传

这种方法与向input标签中输入文本一样

import time
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(10)
driver.get("https://sahitest.com/demo/php/fileUpload.htm")

ele = driver.find_element(By.CSS_SELECTOR, '#file')
ele.send_keys(r"D:\python\student\014-selenium\绘图1.png")
time.sleep(10)
driver.quit()

通过点击win窗口上传

  • 第三方工具:Autoit V3
  • 第三方模块:pyautoit

第三方工具简单介绍

下载地址:

链接:https://pan.baidu.com/s/1dhqGWAGd_iCfFm9gQS5N6g 
提取码:n6h3

image
image

import time
import autoit
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(10)
driver.get("https://sahitest.com/demo/php/fileUpload.htm")


ele = driver.find_element(By.CSS_SELECTOR, '#file')
ActionChains(driver).click(ele).perform()
time.sleep(3)

# 获取wind窗口对象,win_wait_active("窗口的标题", 等待时间)
autoit.win_wait_active("打开", 3)
# 在文件选择输入框中输入文件的地址,control_send("窗口的标题", "控件的名称", r"绘图1.png")
autoit.control_send("打开", "Edit1", r"绘图1.png")
# 点击打开按钮,control_click("窗口的标题", "控件的名称")
autoit.control_click("打开", "Button1")

time.sleep(10)
# driver.quit()
posted @   小高2  阅读(72)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示