zoukankan      html  css  js  c++  java
  • 无人工干预地自动下载某个文件

    #!usr/bin/env python  
    #-*- coding:utf-8 -*-  
    """ 
    @author:   sleeping_cat
    @Contact : zwy24zwy@163.com 
    """ 
    #无人工干预地自动下载某个文件
    from selenium import webdriver
    import unittest,time
    
    class TestDemo(unittest.TestCase):
        def setUp(self):
            # 创建一个FirefoxProfile实例,用于存放自定义配置
            profile = webdriver.FirefoxProfile()
            # 指定下载路径,默认只会自动创建一级目录,如果指定了多级不存在的目录,将会下载到默认路径
            profile.set_preference('browser.download.dir','d:\iDownload')
            # 将browser.download.folderList设置为2,表示将文件下载到指定路径
            # 设置成2表示使用自定义下载路径;设置成0表示下载到桌面;设置成1表示下载到默认路径
            profile.set_preference('browser.download.folderList',2)
            # browser.helperApps.alwaysAsk.force对于未知的MIME类型文件会弹出窗口让用户处理,默认值为True,设定为False表示不会记录打开未知MIME类型文件的方式
            profile.set_preference('browser.helperApps.alwaysAsk.force',False)
            # 在开始下载时是否显示下载管理器
            profile.set_preference('browser.download.manager.showWhenStarting',False)
            # 设定为False会把下载框进行隐藏
            profile.set_preference('browser.doenload.manager.useWindow',False)
            # 默认值为True,设定为False表示不获取焦点
            profile.set_preference('browser.download.manager.focusWhenStarting',False)
            # 下载.exe文件弹出警告,默认值是True,设定为False则不会弹出警告框
            profile.set_preference('browser.download.manager.alertOnEXEOpen',False)
            # browser.helperApps.neverAsk.openFile表示直接打开下载文件,不显示确认框
            # 默认值为空字符串,下行代码行设定了多种文件的MIME类型
            # 例如application/exe,表示.exe类型的文件,application/excel表示Excel类型的文件
            profile.set_preference('browser.helperApps.neverAsk.openFile','application/pdf')
            # 对所给出文件类型不再弹出提示框进行询问,直接保存到本地磁盘
         profile.set_preference('browser.helperApps.nerverAsk.saveToDisk',
              'application/zip,application/octet-stream') # browser.download.manager.showAlertOnComplete设定下载文件结束后是否显示下载完成提示框,默认为True,设定为False表示下载完成后不显示下载完成提示框 profile.set_preference('browser.download.manager.showAlertOnComplete',False); # browser.download.manager.closeWhenDone设定下载结束后是否自动关闭下载框,默认为True,设定为False表示不关闭下载管理器 profile.set_preference('browser.download.manager.closeWhenDone',False) #启动浏览器时,通过firefox_profile参数 #将自动配置添加到FirefoxProfile对象中 self.driver = webdriver.Firefox(firefox_profile=profile) def test_dataPicker(self): url1 = 'https://github.com/mozilla/geckodriver/releases' self.driver.get(url1) #选择下载zip类型文件,使用application/zip指代此类型文件 self.driver.find_element_by_xpath
         ('//strong[.="geckodriver-v0.19.1-win64.zip"]').click() time.sleep(10) url = 'https://www.python.org/downloads/release/python-2712/' self.driver.get(url) self.driver.find_element_by_link_text('Windows x86-64 MSI installer').click() time.sleep(10) def tearDown(self): self.driver.quit() if __name__ == '__main__': unittest.main()
  • 相关阅读:
    bzoj1066 [SCOI2007]蜥蜴
    bzoj2957 楼房重建
    bzoj2243 [SDOI2011]染色
    bzoj1858 [Scoi2010]序列操作
    bzoj1051 [HAOI2006]受欢迎的牛
    二分图最大匹配模板(pascal)
    gulp-file-include 合并 html 文件
    vue-cli项目结构分析
    svn汉化包安装无效的解决办法
    vue-cli npm install 失败
  • 原文地址:https://www.cnblogs.com/sleeping-cat/p/8193482.html
Copyright © 2011-2022 走看看