说明:根据点击“上传文件“按钮 ,在弹出的窗口中选择文件并上传;
通过窗口上传文件
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---