zoukankan      html  css  js  c++  java
  • selenium 自动下载文件

    #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:UsersAdministrator>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
    

      

  • 相关阅读:
    Python中Linux开发的常识
    Python GUI编程(Tkinter)
    linux文本编辑器教学
    WordCloud安装
    怎么安装wordcloud
    java内功 ---- jvm虚拟机原理总结,侧重于GC
    spring源码分析(二)Aop
    spring源码分析(一)IoC、DI
    java内部类技术提炼
    java自定义注解实现前后台参数校验
  • 原文地址:https://www.cnblogs.com/nixingguo/p/7469708.html
Copyright © 2011-2022 走看看