1
votes

Le téléchargement du fichier Java Selenium ne fonctionne pas sur Chrome ver 75

Je suis confronté à un problème avec le fichier de téléchargement de la version 75.0.3770.80 de Google Chrome avec Selenium Java, il affiche Échec - Erreur de téléchargement

J'ai essayé de changer le chemin de téléchargement, puis de télécharger le fichier, le chemin est défini mais pas de chance.

entrez la description de l'image ici

Voici un exemple de code :

WebDriver webDriver;

  System.setProperty ("webdriver.chrome.driver",
          SetObjectProperties.appConfig.
          getPropertyValue ("ChromeDriver"));
String currentDir = System.getProperty ("user.dir");
String downloadpath = currentDir + "/" + "Download";

  HashMap < String, Object > chromePrefs =
  new HashMap < String, Object > ();
  chromePrefs.put ("profile.default_content_settings.popups", 0);
  chromePrefs.put ("download.prompt_for_download", false);
  chromePrefs.put ("download.default_directory", downloadpath);
  chromePrefs.
  put
  ("profile.content_settings.exceptions.automatic_downloads.*.setting",
   1);
ChromeOptions options = new ChromeOptions ();
  options.setExperimentalOption ("prefs", chromePrefs);
  options.addArguments ("--incognito");
  webDriver = new ChromeDriver (options);
  webDriver.manage ().window ().maximize ();
  webDriver.get ("http://www.seleniumhq.org/download/");
  webDriver.findElement (By.linkText ("32 bit Windows IE")).click ();


0 commentaires

4 Réponses :


0
votes

Essayez-le avec cette ligne supprimée

chromePrefs.put ("download.default_directory", downloadpath);


3 commentaires

Merci! La définition des préférences avec la ligne ci-dessus fonctionne comme le chemin d'accès au téléchargement, mais le téléchargement ne démarre pas comme on peut le voir sur la capture d'écran.


Désolé, si je n'étais pas clair. Je voulais dire que si vous ne définissez pas download.default_directory et le laissez par défaut, cela devrait fonctionner.


Merci! Je dois essayer ci-dessus, mais actuellement, j'ai rétrogradé vers une version plus ancienne et cela fonctionne bien, mais le problème est que nous devons définir le chemin de téléchargement vers le dépôt actuel.



1
votes

si vous utilisez Windows, essayez ceci, cela a fonctionné pour moi.

String downloadpath = currentDir + "\\" + "Download";


1 commentaires

Merci @sras, c'est pareil - Le download.default_directory est défini par la chaîne filepath que je passe (vérifié que dans les paramètres lors du débogage), le problème est que le téléchargement ne démarre pas du tout



0
votes

J'étais également confronté à ce problème qui est résolu en utilisant la solution ci-dessous: -

            String currentDir = System.getProperty("user.dir");

            String downloadpath = currentDir + "/" + "Download";

            chromePrefs.put("download.default_directory", downloadpath);


0 commentaires

0
votes

Essayez de définir le chemin de téléchargement comme ci-dessous:

String downloadFilepath = System.getProperty ("user.dir") + File.separator + "Download";


1 commentaires

Pouvez-vous expliquer pourquoi ce changement résoudrait le problème?