You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js Selenium代理配置无效:为何仍使用本地IP?

排查WebDriver代理不生效的问题

让我帮你梳理下代理设置后仍用本地IP的常见原因,你可以逐一排查:

  • 代理参数格式错误
    很多时候问题出在proxy.manual的参数格式上,Selenium的manual方法要求代理地址以数组形式传入,而不是单个字符串。比如你的代码里应该写成:

    var driver = new webdriver.Builder()
      .withCapabilities(webdriver.Capabilities.chrome())
      .setProxy(proxy.manual({http: ['103.87.16.2:80'], https: ['103.87.16.2:80']}))
      .build();
    

    注意:如果你的请求包含HTTPS站点,必须同时配置https代理,否则HTTPS请求会绕过HTTP代理直接用本地IP。

  • ChromeDriver与Selenium版本兼容性
    不同版本的Selenium对代理配置的API可能有变化。如果你用的是较新的Selenium版本,建议用Proxy类来构建配置,语法更清晰也更可靠:

    const { Builder, Proxy } = require('selenium-webdriver');
    
    // 构建代理对象
    const proxyConfig = new Proxy()
      .setHttpProxy('103.87.16.2:80')
      .setHttpsProxy('103.87.16.2:80');
    
    const driver = new Builder()
      .forBrowser('chrome')
      .setProxy(proxyConfig)
      .build();
    
  • 浏览器默认配置或插件干扰
    Chrome可能会加载本地的代理设置,或者有VPN、代理切换类插件覆盖了代码配置。你可以尝试启动Chrome时禁用默认代理并开启无痕模式,避免缓存和插件影响:

    const chrome = require('selenium-webdriver/chrome');
    const options = new chrome.Options()
      .addArguments('--incognito') // 无痕模式
      .addArguments('--no-proxy-server'); // 禁用浏览器默认代理
    
    var driver = new webdriver.Builder()
      .withCapabilities(webdriver.Capabilities.chrome())
      .setChromeOptions(options)
      .setProxy(proxy.manual({http: ['103.87.16.2:80'], https: ['103.87.16.2:80']}))
      .build();
    
  • 代理本身不可用
    先确认你用的代理103.87.16.2:80是正常工作的。可以在终端用curl测试:

    curl -x http://103.87.16.2:80 https://api.ipify.org
    

    如果返回的不是代理IP,说明代理本身失效、需要认证或者被防火墙拦截了,这种情况下WebDriver会自动 fallback到本地网络。

  • 代码执行顺序问题
    虽然影响不大,但有些版本的Selenium要求setProxy方法放在withCapabilities之前,你可以调整顺序试试:

    var driver = new webdriver.Builder()
      .setProxy(proxy.manual({http: ['103.87.16.2:80'], https: ['103.87.16.2:80']}))
      .withCapabilities(webdriver.Capabilities.chrome())
      .build();
    

内容的提问来源于stack exchange,提问作者chosirai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:38:55