gpt4 book ai didi

c# - 我可以阻止 ChromeDriver 连接某些网站吗?使用 Selenium 时

转载 作者:行者123 更新时间:2023-12-05 03:09:22 26 4
gpt4 key购买 nike

我想通过 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 我不知道

我需要一些解决方案来防止驱动程序等待响应

好的,在我看到答案后,我认为我无法很好地阐明问题

我想要的是,我正在导航到一个页面,它向其他主机发出了很多不必要的请求。我想阻止这些主机,这样页面加载时间会好得多

我尝试通过在 etc 中编辑 hosts 文件,现在它好 10 倍

但这是系统范围的

我想知道这是否适用于 chromedriver

最佳答案

WebDriver 不允许这种级别的控制(有意),所以简短的回答是否定的,你不能通过它做到这一点。

虽然有一个解决方案 - 只需代理所有流量,并将有问题的 URI 列入黑名单;或将您正在使用的人列入白名单。以任何方式,使代理及时为任何不需要的 URI 返回合理的响应(像素文件或 404)。示例代码(我的 C# 生锈了:):

ChromeOptions options = new ChromeOptions();
options.AddArguments("--proxy-server=XXX.XXX.XXX.XXX");
var Driver = new ChromeDriver(options);

(对于 Firefox,它有点不同,它在那里设置为功能)

代理有很多选项,来自squid传奇,tinyproxy我过去曾出于类似目的使用过 whatever将适合您的环境和需求。

关于c# - 我可以阻止 ChromeDriver 连接某些网站吗?使用 Selenium 时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43203801/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com