2016-05-06 22 views
0

Ich versuche, CSV-Datei mit Selen-Tool in Python herunterladen, aber nach dem Klicken auf Dateilink in der Webseite speichern, zeigt der Browser mir Dialogfeld. Ich versuchte "Alarm", um dies zu handhaben, aber es gibt mir Fehler wie, Warnung ist nicht vorhanden .... Ich benutze Python als Skriptsprache und Selen als Werkzeug. hier ist der mein Code:Wie behandelt man das Dialogfeld Datei speichern in Firefox mit Selen mit Python?

fp = webdriver.FirefoxProfile() 
fp.set_preference('browser.download.folderList', 2) # custom location 
fp.set_preference('browser.download.manager.showWhenStarting', False) 
fp.set_preference('browser.download.dir', 'C:\Temp\') 
fp.set_preference('browser.helperApps.neverAsk.saveToDisk', 'application/csv,text/csv,text/comma-separated-values, application/octet-stream') 
driver = webdriver.Firefox(profile) 
driver.window_handles 
driver.swich_to_window(driver.window_handles[0]) 
url='' 
driver.get(url) 
pass=driver.find_element_by_id('pswd') 
pass.send_keys('xyz123') 
driver.find_element_by_id('btnLogin').click() 
driver.implicitly_wait(30) 
driver.find_element_by_link_text('FileName').click() 
driver.switch_to_alert().accept() 
+0

Was ist der genaue MIME-Typ der Datei? –

Antwort

3

/* Schließlich bin ich mit Speichern-Dialog durchgeführt. Ich habe es mit einigen Firefox-Präferenzen Einstellungen behandelt. Da ich nicht in der Lage war, den genauen MIME-Typ herauszufinden, benutzte ich alles mögliche. Unten ist mein Code, um das Dialogfeld Datei speichern zu handhaben: */

fp = webdriver.FirefoxProfile() 
fp.set_preference('browser.download.folderList', 2) 
fp.set_preference('browser.download.manager.showWhenStarting', False) 
fp.set_preference('browser.download.dir', 'C:\Temp\') 
fp.set_preference('browser.helperApps.neverAsk.openFile', 'text/csv,application/x-msexcel,application/excel,application/x-excel,application/vnd.ms-excel,image/png,image/jpeg,text/html,text/plain,application/msword,application/xml') 
fp.set_preference('browser.helperApps.neverAsk.saveToDisk', 'text/csv,application/x-msexcel,application/excel,application/x-excel,application/vnd.ms-excel,image/png,image/jpeg,text/html,text/plain,application/msword,application/xml') 
fp.set_preference('browser.helperApps.alwaysAsk.force', False) 
fp.set_preference('browser.download.manager.alertOnEXEOpen', False) 
fp.set_preference('browser.download.manager.focusWhenStarting', False) 
fp.set_preference('browser.download.manager.useWindow', False) 
fp.set_preference('browser.download.manager.showAlertOnComplete', False) 
fp.set_preference('browser.download.manager.closeWhenDone', False) 
driver = webdriver.Firefox(fp) 
driver.window_handles 
driver.swich_to_window(driver.window_handles[0]) 
url='' 
driver.get(url) 
pass=driver.find_element_by_id('pswd') 
pass.send_keys('xyz123') 
driver.find_element_by_id('btnLogin').click() 
driver.implicitly_wait(30) 
driver.find_element_by_link_text('FileName').click() 
time.sleep(5)