selenium实现自动下载文件


#coding:utf-8
'''
说明:导出
'''

from selenium import webdriver
from public.highlightElement import highlight
from ReportManage.DefReportExport import export
import time,os,shutil

dict={"report1":"导出1","report2":"导出2","report3":"导出3"}
#导出函数
def export(browser):
  依次下载report1,report2,report3
for key, value in dict.items():
linktext = value
print(linktext)
browser.find_element_by_link_text(linktext).click()
# 点击导出按钮
export = browser.find_element_by_xpath(".//*[@id='dlink']/following-sibling::button")
highlight(export)
export.click()

time.sleep(3)

#以下是如何用selenium实现下载
#在firefox中设置相关的下载参数,当模拟点击时,webdriver会自动保存对应的文档
fp=webdriver.FirefoxProfile()
#2表示自定义的文件夹,0表示保存到浏览器默认的文件夹
fp.set_preference("browser.download.folderList",2)
#是否显示开始
fp.set_preference("browser.download.manager.showWhenStarting",False)
#设置默认的保存文件夹
file_path=os.getcwd()+"\\report\\"
fp.set_preference("browser.download.dir",file_path)
#设置自动保存的文件类型
fp.set_preference("browser.helperApps.neverAsk.saveToDisk",
"application/vnd.ms-excel")


browser=webdriver.Firefox(firefox_profile=fp)
browser.get("http://12345678"
)
export(browser)
time.sleep(
3)

#删除report文件夹
shutil.rmtree(file_path)
browser.quit()


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM