我想通过Selenium阻止c#控制的Google ChromeDriver
这可能吗?
这就是我启动selenium并导航
的方法var Driver = new ChromeDriver();
Driver.Navigate().GoToUrl(URL)
让我们说我希望特定的Chrome实例不要连接http://googleads.g.doubleclick.net:443
这可能吗?
当该Chrome实例请求连接http://googleads.g.doubleclick.net:443
时,它应该被自动阻止或者可能会返回127.0.0.1
我不知道
我需要一些能阻止司机等待响应的解决方案
好的,在我看到答案之后,我认为我不能很好地澄清这个问题
我想要的是,我正在导航到一个页面,这会向其他主机发出大量不必要的请求。我想阻止这些主机,因此页面加载时间会更好
我尝试过编辑主机文件等等,现在它好了10倍
但这是全系统的
我想知道同样适用于chromedriver或不适用
答案 0 :(得分:1)
WebDriver不允许这种级别的控制(故意),所以简短的答案是否定的,你不能通过它做到这一点。
虽然有一个解决方案 - 只需代理所有流量,并将违规的URI列入黑名单;或者将您正在使用的人列入白名单。在任何方面,使代理为任何不需要的URI及时返回合理的响应(像素文件或404)。 示例代码(我的C#生锈了:):
ChromeOptions options = new ChromeOptions();
options.AddArguments("--proxy-server=XXX.XXX.XXX.XXX");
var Driver = new ChromeDriver(options);
(对于Firefox,它有点不同,它被设置为那里的功能)