博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python3+selenium入门14-上传下载文件
阅读量:6787 次
发布时间:2019-06-26

本文共 1867 字,大约阅读时间需要 6 分钟。

上传文件一种方式是通过定位input标签,然后使用send_keys()方法传入需要上传文件的路径。另一种是使用第三方插件去上传文件。下面看下imput标签的方式。工具可以自己查下。

 

将上面HTML代码复制到文本编辑器,然后保存成.htm文件。

 

from selenium import webdriverdr = webdriver.Chrome()dr.maximize_window()dr.implicitly_wait(10)dr.get('file:///C:/Users/ms/Desktop/new%201.htm')dr.find_element_by_name('pic').send_keys('C:/Users/ms/Desktop/项目管理工具/项目管理工具缺陷统计.xlsx')

一般能定位到input标签就可以使用这样的方式来上传文件。

 

 

下载文件需要针对浏览器进行配置,或者使用第三方的插件。

火狐浏览器

from selenium import webdriverimport osprofile = webdriver.FirefoxProfile()profile.set_preference('browser.download.dir','D:\workspace')profile.set_preference('browser.download.folderList',2)profile.set_preference('browser.download.manager.showWhenStarting', False)profile.set_preference('browser.helperApps.neverAsk.saveToDisk', 'text/x-python')dr = webdriver.Firefox(firefox_profile=profile)dr.maximize_window()dr.implicitly_wait(10)dr.get('http://tungwaiyip.info/software/HTMLTestRunner.html')dr.find_element_by_link_text('HTMLTestRunner.py').click()

代码是下载了原生的HtmlTestRunner。

browser.download.dir:指定下载路径,好像windows必须使用\来当路径符

browser.download.folderList:下载路径设置,0:下载到桌面、1:下载到浏览器默认地址、2:下载到指定路径

browser.download.manager.showWhenStarting:是否显示下载器,貌似没啥用,True或False都没看见

browser.helperApps.neverAsk.saveToDisk:设置Content-type,对应的类型将不再弹出保存提示框

可以F12开发者工具看请求,在响应头可以看到对应的Content-type

 

 

谷歌浏览器

from selenium import webdriveroption = webdriver.ChromeOptions()prefs = {
'profile.default_content_settings.popups':0,'download.default_directory':'d:\\'}option.add_experimental_option('prefs', prefs)dr = webdriver.Chrome(chrome_options=option)dr.maximize_window()dr.implicitly_wait(10)dr.get('http://tungwaiyip.info/software/HTMLTestRunner.html')dr.find_element_by_link_text('HTMLTestRunner.py').click()

profile.default_content_settings.popups:设置0禁止弹出窗口

download.default_directory:设置下载路径

转载于:https://www.cnblogs.com/myal/p/9396926.html

你可能感兴趣的文章
二维数组
查看>>
第十周作业
查看>>
阅读笔记《构建之法》五
查看>>
SQL 高级查询
查看>>
LIUNX-Centos 7 编译GDAL
查看>>
日志、命名查询
查看>>
Google Chrome调试常用快捷键
查看>>
发送邮件那些事
查看>>
loadrunner参数化
查看>>
Topcoder SRM558 1000 SurroundingGame
查看>>
dom树改变监听
查看>>
【后缀数组】poj3581 Sequence
查看>>
【kd-tree】bzoj1176 [Balkan2007]Mokia
查看>>
CodeBlocks中使用中文字符问题
查看>>
SQL plus连接远程Oralce数据库
查看>>
C#泛型详解
查看>>
php将表单中数据传入到数据库
查看>>
PDMS RvmTranslator
查看>>
第一天使用博客园 ----与肝胆人共事,于无字句处读书
查看>>
20172318 2018-2019-1 《程序设计与数据结构》第4周学习总结
查看>>