当你感觉艰难的时候,说明你在走上坡路。

selenium 自动下载文件

上一篇 / 下一篇  2014-04-14 23:27:45 / 个人分类:selenium+python

#coding=utf-8
from selenium import webdriver


#实例化一个火狐配置文件
fp = webdriver.FirefoxProfile()


#设置各项参数,参数可以通过在浏览器地址栏中输入about:config查看。

#设置成0代表下载到浏览器默认下载路径;设置成2则可以保存到指定目录
fp.set_preference("browser.download.folderList",2)


#是否显示开始,(个人实验,不管设成True还是False,都不显示开始,直接下载)
fp.set_preference("browser.download.manager.showWhenStarting",False)


#下载到指定目录
fp.set_preference("browser.download.dir","c:\\test")


#不询问下载路径;后面的参数为要下载页面的Content-type的值
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","application/octet-stream")


#启动一个火狐浏览器进程,以刚才的浏览器参数
dr = webdriver.Firefox(firefox_profile=fp)


#打开下载页面
dr.get("https://pypi.python.org/pypi/selenium")


#点击某个按钮
dr.find_element_by_xpath("//div[@id='download-button']/a").click()


#如果是某个直接下载链接,则缺少了点击某个链接或者按钮的操作,打开页面后执行下载动作


#备注:查看Content-type的方法,curl
#curl是采用url命令,在命令行下工作的文件传输开源工具
#首先,安装,到官网下载对应的版本,解压出来后是一个curl.exe文件。打开cmd,进入该目录下,则可以使用curl命令了。
#也可以将curl.exe的上层目录添加到path目录下去,则在任何地方都可以使用curl命令。
#如查看百度的Content-type ,进入cmd页面:C:\Users\Administrator>curl -I   http://www.baidu.com
HTTP/1.1 200 OK
Date: Tue, 15 Apr 2014 10:08:24 GMT
Content-Type: text/html
Connection: Keep-Alive
Vary: Accept-Encoding
Set-Cookie: BAIDUID=5A06884F893AB430B9A251E59C27C50F:FG=1;
7 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.c
Set-Cookie: BDSVRTM=0; path=/
Set-Cookie: H_PS_PSSID=5552_4578_5231_1455_6052_5223_4760_6
; domain=.baidu.com


TAG:

Jourly的个人空间 引用 删除 Jourly   /   2014-04-18 15:37:36
这个是用python写的,首先要搭建好python+selenium的环境,然后按照上面的方法,是可以将文件下载到指定目录的。没有很明白你指的工具是什么意思?如果要下载其他链接,更改下参数
引用 删除 weilihua   /   2014-04-16 15:19:33
能提供相关的测试工具?谢谢!!!
 

评分:0

我来说两句

日历

« 2024-05-07  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 18925
  • 日志数: 6
  • 建立时间: 2013-12-23
  • 更新时间: 2014-04-18

RSS订阅

Open Toolbar