2017-12-29 66 views
1

私は様々な方法を試しましたが、Excelファイルをダウンロードできません。私はいつも私を見つめているFirefoxのポップアップで終わる。任意のアイデアこの作業を行う方法Selenium Pythonを使用してURLから.XLSファイルをダウンロードすることはできません。いつもFirefoxのダウンロードポップアップで終わる

import time 
    from selenium import webdriver 
    from selenium.webdriver.support.ui import WebDriverWait 
    from selenium.webdriver.common.by import By 
    from selenium.webdriver.support import expected_conditions as EC 

    profile = webdriver.FirefoxProfile() 
    profile.set_preference('browser.download.folderList', 2) # customlocation 
    profile.set_preference('browser.download.dir','/home/rahul') 
    profile.set_preference('browser.download.manager.showWhenStarting', False) 
    profile.set_preference('browser.download.panel.shown', False) 
    profile.set_preference('browser.helperApps.neverAsk.saveToDisk','application/vnd.ms-excel, application/vnd.ms-excel.addin.macroenabled.12,application/vnd.ms-excel.sheet.binary.macroenabled.12,application/vnd.ms-excel.template.macroenabled.12,application/vnd.ms-excel.sheet.macroenabled.12,application/octet-stream') 
    profile.set_preference("browser.helperApps.alwaysAsk.force", False) 
    profile.set_preference("browser.download.manager.alertOnEXEOpen", False) 
    profile.set_preference("browser.download.manager.focusWhenStarting", False) 
    profile.set_preference("browser.download.manager.useWindow", False) 
    profile.set_preference("browser.download.manager.showAlertOnComplete", False) 
    profile.set_preference("browser.download.manager.closeWhenDone", False) 
    driver = webdriver.Firefox(profile) 
    driver.get('any_url') 
    driver.wait = WebDriverWait(driver, 5) 
    time.sleep(5) 
    export = driver.wait.until(EC.element_to_be_clickable((By.ID, "ExportSpn"))).click() 
    time.sleep(5) 
    driver.quit() 
+1

最新の回答を参照してください。 「Python:Webページでセレンをダウンロードできません」という重複の可能性があります(https://stackoverflow.com/questions/44072022/python-unable-to-download-with-selenium-in-webpage/44196146#44196146) – DebanjanB

+1

それは提案のおかげで終わった。 –

答えて

0

私は間違ったMIMEタイプを言及していました。 MIMEタイプは、ダウンロードファイルが 'application/ms-excel'であることを要求します。誰かがまだMIMEタイプを取得できない場合は、https://stackoverflow.com/users/771848/alecxeというアプローチでMIMEタイプを正しく取得することをお勧めします。

•手動でチェックFirefoxでファイルをダウンロードし、オープンヘルプ•チェックボックス 「自動的にこのファイルタイプを保存」 - > Firefoxブラウザにおけるトラブルシューティング情報 •「プロファイルフォルダ」ボタンを見つけ、プロファイルフォルダ内にそれを •をクリックしてくださいmimeTypes.rdfファイルを見つけます •テキストエディタでファイルを開き、そこに記載されているMIMEタイプを探します - urnで始まるXMLノード属性値:mimetype •browser.helperApps.neverAsk.saveToDiskで見つかったMIMEタイプを使用しますカンマ区切りの値

関連する問題