2012-08-27 15 views
5

Estoy raspando la web con selenio y cada vez que intento descargar i archivo la descarga de Firefox/guardar como archivo aparece, incluso si aplico profile.set_preference('browser.helperApps.neverAsk.saveToDisk', "application/csv"), todavía no funciona, lo he intentado todo .csv MIME relacionado pero no funciona, ¿es posible hacer clic en el botón de opción save as y luego hacer clic en ok en el cuadro de diálogo o deshabilitarlo por completo?Deshabilitar Firefox guardar como dialog-selenium

+1

¿Ha establecido también 'browser = webdriver.Firefox (firefox_profile = profile) 'como [se sugiere aquí] (http://stackoverflow.com/questions/1176348/access-to-file-download-dialog-in-firefox/7983487#7983487)? – unutbu

+0

es ese un perfil de Firefox del sistema que editó? Dependiendo de su versión de selenio, podría estar usando su propio perfil en lugar de su sistema. Es posible que desee considerar la creación de un perfil personalizado para esto y especificar la ruta al perfil utilizando el indicador -firefoxProfileTemplate al iniciar el selenio a través de la línea de comandos –

+0

Sí, ya lo he intentado. –

Respuesta

3

que debe hacer dos cosas, establece por primera vez estas tres opciones correspondientes (esto es, en Java, pero supongo que se las arreglan para traducir eso a pitón :-):

profile.setPreference("browser.download.dir", "c:/yourDownloadDir"); 
profile.setPreference("browser.download.folderList", 2); 
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/csv, text/csv"); 

en segundo lugar, usted debe asegurarse de que la descargar archivo tiene el tipo de mime deseado. Para hacerlo, puede usar las herramientas de desarrollador web e inspeccionar la descarga.

EDIT:

a averiguar el tipo MIME abierto Chrome, pulse Ctrl + Shift + I (Cmd + Alt + I en Mac OS) el cambio a la pestaña 'Red' y haga clic su enlace de descarga Debería ver algo como esto:

Chrome developer tools mime type

+0

Ya lo he intentado, cuando lo descargo de forma manual dice que es un valor separado por coma de Microsoft Excell, sin embargo, el tipo MIME no se muestra en las aplicaciones de opciones de los navegadores. Este es el hipervínculo de javascript ' href =" javascript: download_as ('CSV'); ' –

+1

¿Hay alguna manera de permitir que todo se descargue en selenio? –

+0

@ user1582983 Agregué una explicación sobre cómo encontrar el tipo de mimo –

1

Sólo una respuesta adicional que pueda ayudar a alguien, como comentarios a la respuesta aceptada me pusieron en el camino correcto (¡gracias!). Otro tipo MIME de CSV con el que puede tratar es application/x-csv - ese era mi caso y una vez que lo busqué en la pestaña Red del navegador, me convertí en un hombre más feliz :)

+0

No funcionó para mí, pero el hecho de que haya compartido una solución que funcionó para usted 4 años después de que se formuló la pregunta vale la pena un IMO de votos acumulados. –

Cuestiones relacionadas