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