Comment télécharger un fichier CSV via le profil Firefox en Java


Question - Après avoir défini le profil Firefox, Firefox continue de demander l'emplacement de téléchargement lors du téléchargement du fichier CSV. S'il vous plaît aider.

System.setProperty("webdriver.gecko.driver", "..\\C_Automation\\Files\\geckodriver64_15.0.exe");
        FirefoxProfile Profile = new FirefoxProfile();
        Profile.setPreference("browser.download.dir",downloadFilepath);
        Profile.setPreference("browser.download.folderList",2);
        Profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "text/csv");
        Profile.setPreference("browser.download.manager.showWhenStarting",false);
        Profile.setPreference("browser.helperApps.neverAsk.openFile","text/csv");
        Profile.setPreference("browser.helperApps.alwaysAsk.force", false);
        driver = new FirefoxDriver(Profile);
Author: DebanjanB, 2017-05-19

1 answers

Voici la réponse à votre question:

Je ne vois aucun problème majeur dans votre code. Mais pendant que vous setPreference pour la classe FirefoxProfile n'oubliez pas d'ajouter tous les Multipurpose Internet Mail Extensionspertinents des fichiers de type CSV référencés dans ce site.

Voici votre propre bloc de code avec quelques réglages simples ajoutés:

    String downloadFilepath = "C:\\Utility\\OP_Resources\\MozillaFirefoxDownload";
    System.setProperty("webdriver.gecko.driver", "C:\\Utility\\BrowserDrivers\\geckodriver.exe");
    FirefoxProfile Profile = new FirefoxProfile();
    Profile.setPreference("browser.download.dir",downloadFilepath);
    Profile.setPreference("browser.download.folderList",2);
    //neverAsk - saveToDisk - CSV        
    Profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/csv,application/excel,application/vnd.ms-excel,application/vnd.msexcel,text/anytext,text/comma-separated-values,text/csv,text/plain,text/x-csv,application/x-csv,text/x-comma-separated-values,text/tab-separated-values");
    //neverAsk - saveToDisk - ANY       
    Profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/xml,text/plain,text/xml,image/jpeg,application/octet-stream");
    Profile.setPreference("browser.download.manager.showWhenStarting",false);
    //neverAsk - openFile - CSV
    Profile.setPreference("browser.helperApps.neverAsk.openFile","application/csv,application/excel,application/vnd.ms-excel,application/vnd.msexcel,text/anytext,text/comma-separated-values,text/csv,text/plain,text/x-csv,application/x-csv,text/x-comma-separated-values,text/tab-separated-values");
    //neverAsk - openFile - ANY
    Profile.setPreference("browser.helperApps.neverAsk.openFile","application/xml,text/plain,text/xml,image/jpeg,application/octet-stream");
    Profile.setPreference("browser.helperApps.alwaysAsk.force", false);

J'ai vérifié mon code site et Microsoft site ainsi et me semble fonctionne très bien.

Faites-moi savoir si cela répond à votre question.

 0
Author: DebanjanB, 2017-05-22 16:04:58