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

    WebDriver允许我们设置默认的文件下载路径,也就是说,文件会自动下载并且存放到设置的目录中,不同的浏览器设置方式不同。
    下面以 Firefox 浏览器为例,演示文件的下载。
    import os
    from seleni um dmport webdriver
    fp = webdriver.FirefoxProfile()
    fp.set_preference("browser.download.folderList",2)

    fp.set _preference ("browser.download.dir",os.getcwd())
    fp.set_preference ("browser.helperApps.neverAsk.saveToDisk",
    "binary/octet-stream")
    driver - webdriver.Firefox(firefox_profile=fp)
    driver.get ("https://pypi.org/project/selenium/#files")
    driver.find _element by partial_link_text ("selenium-3.141.0.tar.gz").click()

    browser.download.folderList
    设置为0,表示文件会下载到浏览器默认的下载路径;设置为2,表示文件会下载到指定目录。
    browser.download.dir
    用于指定下载文件的目录。通过os.getcwd()方法获取当前文件的所在位置,即下载文件保存的目录。
    browser.helperApps.neverAsk.saveToDisk

    指定要下载文件的类型,即 Content-tvpe值,“binary/octet-stream”用于表示二进制文件。
    HTTP Content-type常用对照表参见http://tool.oschina.net/commonso
    可以通过在Firefox浏览器地址栏输入“about:config”进行参数的设置,如图4-7所示。

    在调用WebDriver的Firefox类时将所有设置选项作为firefox_profile参数传递给Firefox浏览器。Firefox浏览器在下载时会根据这些设置将文件下载到当前脚本目录下。

    import os
    from selenium import webdriver
    options =- webdriver.Chromeoptions()
    prefs - {'profile.default_content_settings.popups':0,
    'download.default directory':os.getcwd())
    options.add_experimental option('prefs', prefs)
    driver = webdriver.Chrome (chrome_options=options)
    driver.get("https://pypi.org/project/selenium/#files")
    driver.find_element_by_partial_link_text("selenium-3.141.0.tar.gz").click()
    Chrome浏览器在下载时默认不会弹出下载窗口,这里主要想修改默认的下载路径。

    profile.default_content settings.popups
    设置为0,表示禁止弹出下载窗口。
    download.default_directory
    设置文件下载路径,使用os.getcwd)方法获取当前脚本的目录作为下载文件的保存位置。

  • 相关阅读:
    剑指offer:面试题25、二叉树中和为某值的路径
    剑指offer:面试题24、二叉搜索树的后续遍历序列
    剑指offer:面试题23、从上往下打印二叉树
    剑指offer:面试题22、栈的压入、弹出序列
    剑指offer:面试题21、包含min函数的栈
    剑指offer:面试题20、顺时针打印矩阵
    剑指offer:面试题19、二叉树的镜像
    剑指offer:面试题18、树的子结构
    剑指offer:面试题17、合并两个排序的链表
    剑指offer:面试题16、反转链表
  • 原文地址:https://www.cnblogs.com/cpas-3-org/p/13906200.html
Copyright © 2011-2022 走看看