文件上传

文件上传的三种方法

第一种方法:如果界面有input元素,

收到定位到元素信息,el=driver.find_element_by_name("mfile"),

el.send_keys("d:\demo.txt)

输入的是文件路径,

send_keys:1,输入文本;2,可以输入键盘位置;3,发送文件

第二种方法:有时候文件上传不是一个普通的input元素,可能是其他的元素或者组件;使用pywinauto进行上传,这是两个系统之间的交互,浏览器和windows系统,

from pywinauto import Desktop
app = Desktop()
dialog = app[‘打开‘] #根据名字找到弹出窗口
dialog["Edit"].type_keys("D:\demo.txt") # 在输入框中输入值
dialog["Button"].click()
time.sleep(2)
可以把这个操作封装成一个函数,传入的值做为传入的参数,
但是pywinauto只是适用于windows操作系统,如果是其他系统需要使用pyautogui,
import pyautogui

pyautogui.write("d:\demo.txt")
pyautogui.press(‘enter‘, presses=2)
第一个参数表示键盘按键,第二个参数表示按键次数,一般会按两次键,因为浏览器和windows系统交互的时候,按键一次可能不生效。
但是pyautogui不能使用中文格式,如果需要发送中文格式的文件,需要使用剪切板,
import pyautogui
import pyperclip

pyperclip.copy(‘D:\用户.txt‘)

time.sleep(2)
pyautogui.hotkey(‘ctrl‘, ‘v‘)
pyautogui.press(‘enter‘, presses=2)



文件上传

上一篇:Chrome设置跨域访问方式--disable-web-security不生效原因,以及出现--disable-web-security,但是实际上浏览器不能跨域访问解决方案


下一篇:CSS的坑