我手动创建了一个包含附加组件/扩展名(Hotspot Shield VPN附加组件)的特定Firefox配置文件。现在,在代码中,我正在通过firefox驱动程序加载此配置文件,但是问题是从代码启动时未加载扩展。另一方面,在手动启动配置文件时,它也可以正常工作。
var profileManager = new FirefoxProfileManager();
var profile = profileManager.GetProfile("brysontiller");
profile.SetPreference("extensions.allowPrivateBrowsingByDefault", true);
profile.SetPreference("extensions.hotspot-shield@anchorfree.com.onByDefault", true);
var options = new FirefoxOptions { Profile = profile, LogLevel = FirefoxDriverLogLevel.Trace };
var driver = new FirefoxDriver(@"C:\Users\danza\source\repos\InstaManager\", options);
driver.Navigate().GoToUrl("https://www.google.com");
我尝试通过使用
在代码中添加扩展名profile.AddExtension(@"C:\Users\danza\AppData\Roaming\Mozilla\Firefox\Profiles\652o40ny.profile_7\extensions\hotspot-shield@anchorfree.com.xpi");
以上问题仍然在此代码行中仍然存在。 (尽管实际上并不需要,因为手动创建的配置文件已经包含所需的扩展名,因此无需再次添加。)
我还尝试设置各种个人资料偏好设置,如下所示:
profile.SetPreference("extensions.allowPrivateBrowsingByDefault", true);
profile.SetPreference("extensions.hotspot-shield@anchorfree.com.onByDefault", true);
问题仍然存在。
当我手动启动配置文件时,加载项如下所示:
但是当我通过代码启动它时,它不会:
答案 0 :(得分:0)
如果您手动创建了配置文件,为什么不尝试直接使用它打开浏览器:
FirefoxOptions firefoxOptions = new FirefoxOptions();
firefoxOptions.Profile = new FirefoxProfile("Path to the profile");
driver = new FirefoxDriver(..., firefoxOptions);
你能不能让我知道?