当前位置: 首页 > 知识库问答 >
问题:

如何使用C#With Selenium中的ChromeOptions修复您所在位置的文件下载错误

沈琨
2023-03-14

背景——我正在尝试自动化一个与数据恢复相关的网站。因此,一旦用户登录,他/她就可以选择所需的文件,一旦启用下载按钮,用户就可以下载文件。

问题-我能够成功下载文件,但当我给出我想要下载文件的路径时,问题出现了,我在Chrome on中使用ChromeOptions获得“失败-下载错误”。我想在自动化套件中下载该文件,但目前我尝试的任何位置都会出现相同的错误。

请注意-位置已经可用,文件类型可以是任何东西。

代码-
以下是我尝试过的代码选项-

--选项1

ChromeOptions options = new ChromeOptions();
options.AddArguments("--browser.download.folderList=2");
options.AddArguments("--browser.helperApps.neverAsk.SaveToDisk=image/jpg");
options.AddArguments("--browser.download.dir="+@"C:\\Users\\Administrator\\Downloads\\NewFolder\\");
options.AddUserProfilePreference("download.default_directory",@"C:\\Users\\Administrator\\Downloads\\NewFolder\\");

localDriver = new ChromeDriver("C:\\Downloads",options)
localDriver.Manage().Window.Maximize();

--选项2

ChromeOptions options = new ChromeOptions();
options.AddUserProfilePreference("download.default_directory",@"C:\\Users\\Administrator\\Downloads\\NewFolder\\");
options.AddUserProfilePreference("download.prompt_for_download","false");
options.AddUserProfilePreference("disable-popup-blocking",true);

localDriver = new ChromeDriver("C:\\Downloads",options)
localDriver.Manage().Window.Maximize();

--选项3

ChromeOptions options = new ChromeOptions();
options.AddArguments("--browser.download.folderList=2");
options.AddArguments("--browser.helperApps.neverAsk.SaveToDisk=image/jpg");
options.AddArguments("--browser.download.dir="+@"C:\\Users\\Administrator\\Downloads\\NewFolder\\");
options.AddUserProfilePreference("download.default_directory",@"C:\\Users\\Administrator\\Downloads\\NewFolder\\");
options.AddUserProfilePreference("download.prompt_for_download","false");
options.AddUserProfilePreference("disable-popup-blocking",true);

localDriver = new ChromeDriver("C:\\Downloads",options)
localDriver.Manage().Window.Maximize();

我提到的问题——如何通过Java中的Firefox配置文件下载CSV文件

如何在使用chrome驱动程序/火狐驱动程序时更改文件下载位置

C#Selenium ChromeOptions未设置/更改默认下载位置

问题-

1.)如何使用ChromeOptions或FireFox选项确保文件下载成功。

2.)在C#中使用chrome选项是否有任何标准文档,因为在许多博客中,这些值被称为字符串,在一些博客中是布尔值。

3.)对于这个问题,我可以采取任何其他替代方法来解决这个文件下载问题。

共有1个答案

艾学海
2023-03-14

对于C#中的解决方案,我们可以使用以下代码-

var options = new ChromeOptions();
options.AddUserProfilePreferences("download.default_directory",@"path_to_your_location");
options.AddUserProfilePreferences("download.prompt_for_download",false);
options.AddUserProfilePreferences("download.directory_upgrade",true);

请注意:-路径到路径您的位置必须完整,例如,您可能试图引用项目中的位置,但仍然使用绝对路径,例如,您可能指的是项目中的某个位置,如“\datadownload”,但它应该是C:\Users\User1\MyProject\datadownload”,这样您就不会出现此错误。另外,请注意路径中的“\”和“\”,在该选项中只有“\”有效。

 类似资料:
  • 问题内容: 我正在从下面的代码中使用HTML5下载文件,您可以在 JSBINHTML5上实时查看运行情况。下载文件DEMO 及其工作正常,并在浏览器默认的“ 下载文件夹”中下载文件 。 但我想在其他位置下载它。就像我离线使用此代码一样,只在文件中包含上部代码。当我从浏览器运行此文件时,它将下载该文件并将其保存在。因此,我想从调用它的位置下载此文件。为此,我从以下代码中选择路径。它给了我这样的路径,

  • 我目前试图下载一个文件从谷歌驱动器使用PyDrive,但我只能下载文件到相同的位置作为我的Python程序。有没有办法指定文件的下载位置?这是我目前下载文件的方式。

  • 问题内容: 我想隐藏下载文件夹的位置,以便用户下载文件时看不到该位置。我认为可以使用.htaccess文件完成此操作,但是我该怎么做?另外,如何用PHP完成呢? 问题答案: 这是我在PHP中执行的操作: 此外,如果您不希望任何人访问文件位置,请将名为的文件放入仅包含内容的下载文件夹中: 我稍微修改了代码。首先,当我说假文件名和真实文件名时,假文件名就是下载程序将下载文件的名称,其中真实文件名是服务

  • 问题内容: 我正在使用python 2.7请求模块使用以下代码下载二进制文件,如何使此代码从部分下载的文件中“自动恢复”下载。 如果可能的话,我宁愿只使用模块来实现这一目标。 问题答案: 如果Web服务器支持范围请求,则可以将Range标头添加到您的请求中: 您将收到StartPos和StopPos之间的部分。如果不知道StopPos,请使用: 因此您的代码将是:

  • 问题内容: 我必须使用下面给出的Selenium Webdriver执行以下任务。 单击任何开始下载任何文件的链接/按钮(文件类型可以是图像,pdf,jar等) 单击弹出窗口上的“保存”(如果显示)(例如http://selenium.googlecode.com/files/selenium-server-standalone-2.33.0.jar) 提供所需的位置以保存该文件。 任何人都可以共

  • 你好,我有以下问题 查询在我的localhost(XAMMP)中运行良好,但在其他任何地方它都会给我这个错误 示例:http://sqlfiddle.com/#!9/e19e8c/2