【问题标题】:Track WebDriver requests with Fiddler or so使用 Fiddler 左右跟踪 WebDriver 请求
【发布时间】:2019-04-20 03:56:23
【问题描述】:

我正在使用 C# 和 Selenium 和 Chrome WebDriver 创建一个网络爬虫应用程序。到目前为止,我已经这样配置它:

public class Program
{
    private static ChromeOptions options;
    private static ChromeDriver driver;

    static void Main(string[] args)
    {
        var proxy = new Proxy();
        proxy.Kind = ProxyKind.Manual;
        proxy.IsAutoDetect = false;
        proxy.HttpProxy = "127.0.0.1.fiddler:52840";

        options = new ChromeOptions();
        options.Proxy = proxy;
        options.AddArgument("ignore-certificate-errors");
        options.SetLoggingPreference(LogType.Driver, LogLevel.All);

        driver = new ChromeDriver(options);
        driver.Navigate().GoToUrl("https://www.google.com");
    }
}

但在访问“https://www.google.com”时,我似乎无法在 Fiddler 中获得任何信息。 我也想知道 - 如果我在我的 PC 上安装一个应用程序(我使用的是 Windows 10 Pro),它可以在浏览时启用 VPN,这个 VPN 在抓取时是否会处于活动状态,或者我需要在 WebDriver 中进行手动配置?

谢谢!

【问题讨论】:

    标签: c# selenium selenium-chromedriver vpn options


    【解决方案1】:

    默认情况下,fiddler 会将 Internet 选项设置为使用代理,Chrome 将遵循它,因此无需在您的代码中进行设置。检查事项:

    1. 检查 Fiddler 监听端口:Tools > Options > Connections > Fiddler listens on ports
    2. 确保127.0.0.1.fiddler有效的本地域或使用本地IP127.0.0.1
    3. 禁用 IPv6

    【讨论】:

    • 你好@ewwink。 Fiddler 监听端口 8888。我已经从我的代码中删除了代理配置部分并禁用了 IPv6。但我无法确定127.0.0.1:fiddler 是否是有效的本地域,因为我不知道如何。现在,当我使用 Selenium 访问网站时,我可以看到 Fiddler 中的流量。谢谢!
    • 嗯,我有点困惑——如果 Fiddler 继续作为代理,它不应该将我的 IP 更改为世界其他地方吗?不管有没有这个软件,我最终都会使用同一个 IP。
    • 您的公共 IP 不会改变,如果 fiddler 关闭,它将恢复到默认的互联网选项。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-19
    • 1970-01-01
    • 1970-01-01
    • 2012-06-12
    相关资源
    最近更新 更多