Selenium基础:文件上传下载操作 08

发布时间 2023-06-27 13:53:22作者: dayday啊噗

文件上传

input标签使用send_keys()方法上传,非input标签需要借助工具

1、input标签使用send_keys()方法

#文件上传
#“\\"第一个”\"为转义字符
driver.find_element_by_id('uploadfile').send_keys('D:\\Users\\testFile\\test.text')

#driver.quit()

2、使用AutoIt上传

#-*-coding:utf-8-*-
from selenium import webdriver
from time import sleep
import os

driver = webdriver.Chrome()
driver.maximize_window()
driver.get("")
driver.implicitly_wait(10)

#单击上传的按钮
driver.find_element_by_id('fileupload-btn').click()
sleep(2)

#使用AutoIt进行文件上传
os.system(r'D:\\Users\\testFile\\UpLoadFile.exe')

#driver.quit()

AutoIt下载地址:http://www.autoitscript.com/site/autoit/downloads/

  • AutoIt Windows Info:用于定位元素,识别并获取windows上的控件信息
  • SciTE Script Editor:编辑脚本,将获取的元素写成AutoIt执行脚本
  • Compile Script to.exe:将编辑好的脚本AutoIt转换成可执行(.exe)文件
  • Run Script:用于执行AutoIt脚本

3、使用WinSpy上传

下载地址:http://sourceforge.net/projects/winspyex/

 

 

文件下载

修改下载路径有两种方式:手动修改和使用webdriver的options设置修改浏览器的下载路径

1、手动修改 

以Chrome为例 菜单-单击设置-选择高级-下载内容中修改路径

2、通过options修改

在Chrome文件下载中可通过download.default_directory字段值修改

  • download.default_directory:设置下载路径
  • download.prompt_for_download:设置为False则在下载时不需要提示
#-*-coding:utf-8-*-
from selenium import webdriver
import time

chrome_options = webdriver.ChromeOptions()
prefs = {
      "download.prompt_for_download": False, #弹窗

      “download.default_directory": "C:\\Users\\TynamYang\\Desktop\\", #下载目录
}

chrome_options.add_experimental_option("prefs", prefs)
driver = webdriver.Chrome(chrome_options=chrome_options)

driver.get('')
time.sleep(1)
driver.find_element_by_id('downloadFile').click()

#driver.quit()