zoukankan      html  css  js  c++  java
  • WebDriver 上传下载文件---(虫师《selenium3自动化测试实战--基于Python语言笔记22》)

    1.上传文件

    (1)普通上传:将本地文件路径作为一个值放在input标签中,通过form表单将这个值提交给服务器

    # 定位上传按钮,添加本地文件
    driver.find_element_by_id("file").send_keys(file_path + "test.txt")  # file_path 文件目录

    需要导入import os

    (2)插件上传:一般指基于Falsh,JavaScript或Ajax等技术实现的上传功能,使用AutoIt实现

    2.下载文件

     (1)firefox浏览器下载文件

    browser.download.folderList

    0:默认下载路径

    2:下载到指定目录

    import os
    from selenium import webdriver
    
    fp = webdriver.FirefoxProfile()
    
    fp.set_preference("browser.downloadList", 2)  # 下载到指定目录
    fp.set_preference("browser.download.dir", os.getcwd())  # os.getcwd()获取当前文件的所在位置,即下载文件保存的目录
    fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "binary/octet-stream")  # 指定要下载的问你就类型,binary/octet-stream二进制类型
    
    driver = webdriver.Firefox(firefox_profile=fp) # 作为参数传给Firefox()
    driver.get("https://pypi.org/project/selenium/#files")
    driver.find_element_by_partial_link_text("selenium-3.141.0.tar.gz").click()

    (2)Chrome浏览器下载文件

    import os
    from selenium import webdriver
    
    options = webdriver.ChromeOptions()
    # 0禁止弹出下载窗口
    # download.default_directory设置下载路径
    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()

     

  • 相关阅读:
    OneSQL安装
    Dropbox可伸缩性设计最佳实践分享
    软件开发实践的24条军规
    最精彩的英语学习经验总结:俺的英语之路
    Facebook和Google如何激发工程师的创造力
    十种更好的表达“你的代码写的很烂”的方法
    一次java程序的重构
    漂亮代码
    一段代码引发的思考
    最难忘的Bug调试经历
  • 原文地址:https://www.cnblogs.com/kite123/p/11511943.html
Copyright © 2011-2022 走看看