python+selenium文件上传方法总结_1.14
未完结。。。。
1、input 标签
input 标签 上传文件是可以直接 send_keys 的
举例:在百度搜索上传本地图片进行搜索
from selenium import webdriver
driver=webdriver.Firefox()
driver.get("https://www.baidu.com")
driver.find_element_by_css_selector(".soutu-btn").click()
driver.find_element_by_class_name("upload-pic").send_keys(r'F:\Photo\12.jpg')
2、非 input 型上传
不是 input 框的上传实现怎么办,标签有用a的,有div的,有button,有object的。唯一的办法就是打开OS弹框,去处理弹框。
OS弹框涉及的层面已经不是selenium能解决了,所以用OS层面的操作区处理。
有四种处理方法:
1、autoIT:借助外力,我们去调用其生成的au3或exe文件
2、Python pywin32库:识别对话框句柄,进而操作
3、SendKeys库
4、keybd_event:跟3类似,不过是模拟按键,ctrl+a,ctrl+c,ctrl+v...