使用 Selenium WebDriver 获取默认下载文件夹路径
get the default downloads folder path using Selenium WebDriver
我是 selenium 的新手,我想知道如何 获取 浏览器下载文件夹的默认路径(我正在使用 chrome ) 在操作系统中。
我刚刚找到了一种方法来设置默认路径,如下所示:
var chromeOptions = new ChromeOptions();
chromeOptions.AddUserProfilePreference("download.default_directory", path);
chromeOptions.AddUserProfilePreference("intl.accept_languages", "nl");
chromeOptions.AddUserProfilePreference("disable-popup-blocking", "true");
var driver = new ChromeDriver("Driver_Path", chromeOptions);
2 种实现方法。
一个可以在这里找到:
Find Chrome Path
其次是在浏览器上输入(可以通过 sendKeys 完成):
chrome://settings
然后指示您的网络驱动程序点击 'advanced'
最后你可以从 'location'
中获取默认下载目录
如果您遇到任何困难或需要进一步的帮助,请告诉我。
祝你好运!
driver.get("chrome://settings/?search=Downloads");
然后截图。
我也有类似的获取下载路径的需求,我选择了明确设置。如果您可以在创建驱动程序时显式设置路径,则可以使用它。
就我而言,我创建了一个继承自 ChromeDriver
的新 class,它包含下载路径。
public class MyChromeDriver : ChromeDriver
{
public string DownloadsPath { get; set; }
public MyChromeDriver(ChromeOptions options) : base(options) { }
}
然后当我需要一个新的 ChromeDriver
时,我创建新的 MyChromeDriver
并设置下载路径。
var options = new ChromeOptions();
var downloadsPath = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
Directory.CreateDirectory(downloadsPath);
options.AddUserProfilePreference("download.default_directory", downloadsPath);
options.AddUserProfilePreference("download.prompt_for_download", false);
options.AddUserProfilePreference("disable-popup-blocking", "true");
var myChromeDriver = new MyChromeDriver(options);
myChromeDriver.DownloadsPath = downloadsPath;
现在,每当我需要下载路径时,我都会在 myChromeDriver.DownloadPath
中找到它。
我是 selenium 的新手,我想知道如何 获取 浏览器下载文件夹的默认路径(我正在使用 chrome ) 在操作系统中。
我刚刚找到了一种方法来设置默认路径,如下所示:
var chromeOptions = new ChromeOptions();
chromeOptions.AddUserProfilePreference("download.default_directory", path);
chromeOptions.AddUserProfilePreference("intl.accept_languages", "nl");
chromeOptions.AddUserProfilePreference("disable-popup-blocking", "true");
var driver = new ChromeDriver("Driver_Path", chromeOptions);
2 种实现方法。
一个可以在这里找到: Find Chrome Path
其次是在浏览器上输入(可以通过 sendKeys 完成):
chrome://settings
然后指示您的网络驱动程序点击 'advanced' 最后你可以从 'location'
中获取默认下载目录如果您遇到任何困难或需要进一步的帮助,请告诉我。 祝你好运!
driver.get("chrome://settings/?search=Downloads");
然后截图。
我也有类似的获取下载路径的需求,我选择了明确设置。如果您可以在创建驱动程序时显式设置路径,则可以使用它。
就我而言,我创建了一个继承自 ChromeDriver
的新 class,它包含下载路径。
public class MyChromeDriver : ChromeDriver
{
public string DownloadsPath { get; set; }
public MyChromeDriver(ChromeOptions options) : base(options) { }
}
然后当我需要一个新的 ChromeDriver
时,我创建新的 MyChromeDriver
并设置下载路径。
var options = new ChromeOptions();
var downloadsPath = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
Directory.CreateDirectory(downloadsPath);
options.AddUserProfilePreference("download.default_directory", downloadsPath);
options.AddUserProfilePreference("download.prompt_for_download", false);
options.AddUserProfilePreference("disable-popup-blocking", "true");
var myChromeDriver = new MyChromeDriver(options);
myChromeDriver.DownloadsPath = downloadsPath;
现在,每当我需要下载路径时,我都会在 myChromeDriver.DownloadPath
中找到它。