自动化上传文件
python的web自动化环境
selenium 的安装
Chromedriver的下载及环境配置
pywinauto的安装
pywinauto:python中用于操作Windows下的GUI的程序库,可以用来做PC端自动化,Web自动化可以借助于它来实现文件上传
安装命令: pip install pywinauto
下载 辅助检测工具:ViewWizard :http://mydown.yesky.com/pcsoft/413554024.html
查找控件
定位输入窗口
打开
测试网址: https://www.layui.com/demo/upload.html
单文件上传
from selenium import webdriver
from pywinauto import Desktop
# 操作键盘
from pywinauto.keyboard import send_keys
# 启动搜索驱动
browser = webdriver.Chrome()
# 访问目标网址
url = "https://www.layui.com/demo/upload.html"
browser.get(url)
# 点击上传按钮
browser.find_element_by_id("test1").click()
# 选择上传图片
# 创建一个可以操作桌面窗口的对象 操作控件
app = Desktop()
dlg = app["打开"]
# 打印控件
# dlg.print_ctrl_ids()
# 选择文件地址输入控件
dlg["Toolbar3"].click()
send_keys("E:\图片啊\壁纸")
# 回车键
send_keys("{VK_RETURN}")
# 选择文件名输入窗口,.typy_keys()输入文件名
dlg["文件名(&N):Edit"].type_keys("201435.jpg")
# 点击打开按钮
dlg["打开(&O)"].click()
多文件上传
from selenium import webdriver
from pywinauto import Desktop
# 操作键盘
from pywinauto.keyboard import send_keys
# 启动搜索驱动
browser = webdriver.Chrome()
# 访问目标网址
url = "https://www.layui.com/demo/upload.html"
browser.get(url)
# 点击上传按钮
browser.find_element_by_id("test2").click()
# 选择上传图片
# 创建一个可以操作桌面窗口的对象 操作控件
app = Desktop()
dlg = app["打开"]
# 打印控件
# dlg.print_ctrl_ids()
# 选择文件地址输入控件
dlg["Toolbar3"].click()
send_keys("E:\图片啊\壁纸")
# 回车键
send_keys("{VK_RETURN}")
# 选择文件名输入窗口,.typy_keys()输入文件名
dlg["文件名(&N):Edit"].type_keys('"135993.jpg" "201435.jpg" "221495.jpg" ')
# 点击打开按钮
dlg["打开(&O)"].click()