posts - 66,  comments - 2,  views - 55741
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

说明:根据点击“上传文件“按钮 ,在弹出的窗口中选择文件并上传;

通过窗口上传文件 
1、----pyautogui
安装:pip install pyautogui
优点:跨平台(window\linux\mac)
缺点:只能选择一个文件,文件路径有中文可能会出问题
2、----pywinauto #此方法还没有成功,大家如果成功了,可以告诉我一下哦 !
安装:pip install pywinauto
优点:只能在windows 上使用
缺点:可以选择多个文件,路径中有中文也可以

---示例代码如下:


from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
from pywinauto.keyboard import send_keys
import pyautogui

driver = webdriver.Chrome()
driver.maximize_window() #全屏
# driver.set_window_size(width=700,height=500) #设置窗口大小
sleep(1)
#登录系统
driver.get("http://xxxxxxxxxx/login")
driver.find_element(By.XPATH,'//input[@type="text"]').send_keys('username')
driver.find_element(By.XPATH,'//input[@type="password"]').send_keys('password')
#进入菜单--子菜单页面
driver.find_element(By.XPATH,'//button[@type="button"]').click()
sleep(3)
driver.find_element(By.XPATH,'//span[text()="系统管理"]').click()
sleep(1)
driver.find_element(By.XPATH,'//span[text()="固件管理"]').click()
sleep(1)
#点击“新增”按钮
driver.find_element(By.XPATH,'//button[@class="el-button el-button--primary el-button--mini is-plain"]').click()
sleep(1)
#打开的窗口中输入各字段信息
driver.find_element(By.XPATH,'//input[@placeholder="请输入版本名称"]').send_keys('xiaosu')
sleep(2)
driver.find_element(By.XPATH,'//input[@placeholder="请输入硬件版本,如 H743_v2"]').send_keys('aaaaa')
sleep(2)
driver.find_element(By.XPATH,'//input[@placeholder="请输入固件版本,如 kpj_2.1.6"]').send_keys('bbbbbb')
sleep(2)
driver.find_element(By.XPATH,'//div[@class="el-textarea el-input--mini"]//textarea[@placeholder="请输入更新说明"]').send_keys('cccccc')
sleep(2)
#附件上传,点击“选择文件”,此时弹出文件窗口
driver.find_element(By.XPATH,'//em[text()="选择文件"]').click()
sleep(5)
#弹出的选择文件窗口中,选择文件
#-----pywinauto----- #此方法还没有调试成功,大家可以告诉我一下,互相探讨一下!
# send_keys('D:\\210508OTAnew.bin')
# send_keys('{VK_RETURN}')
#-----pyautogui----
pyautogui.write('D:\\210508OTAnew.bin')
pyautogui.press('enter',2) #此处“2”表示再次确认并关闭文件窗口
sleep(5)
# driver.find_element(By.XPATH,'//span[text()="保存"]').click()
# sleep(2)
driver.quit()
--下面动图中省略了的登录-进入菜单画面,直接点击“新增”按钮后的操作,如下:

 


---end---



posted on   给天使看的戲  阅读(626)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示