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

使用Selenium Wire+Tor浏览器遇WinError10061及请求头捕获设置问题

问题解答

一、Selenium Wire连接Tor时出现WinError 10061错误

这个错误是本地连接被拒绝,常见原因和解决方法:

  • Tor浏览器未启动或端口不匹配:确认Tor浏览器已打开,Tor Browser Bundle默认SOCKS5端口是9150,单独的Tor服务可能用9050,检查Tor设置里的端口号后对应修改代码中的代理配置。
  • 防火墙/杀毒软件拦截:本地防火墙或杀毒软件可能阻止了Selenium Wire访问127.0.0.1:9150,可暂时关闭相关软件测试,或添加允许规则。
  • 代理配置错误:确保Selenium Wire的代理设置正确指向Tor的SOCKS5代理,示例配置参考:
    from seleniumwire import webdriver
    
    options = {
        'proxy': {
            'http': 'socks5://127.0.0.1:9150',
            'https': 'socks5://127.0.0.1:9150',
            'no_proxy': 'localhost,127.0.0.1'
        }
    }
    
    driver = webdriver.Firefox(seleniumwire_options=options)
    

二、请求拦截器的相关疑问

1. request参数是什么?

request是Selenium Wire在发起每个HTTP请求前自动传入的Request实例,包含当前请求的所有核心属性:比如headers(请求头字典)、url(请求地址)、method(请求方法)等。你可以直接修改这个对象的属性,以此改变最终发送的请求内容。

2. 为什么赋值interceptor而不是interceptor()?

Selenium Wire需要的是一个可调用的函数对象,这样它才能在每次请求触发时自动调用该函数,并把对应的request对象传进去。如果写interceptor(),相当于立即执行这个函数(此时还没有请求发生,也没有request参数可以传入),函数的返回值(这里是None)会被赋值给driver.request_interceptor,拦截逻辑根本不会被触发。

内容的提问来源于stack exchange,提问作者Olgierd Wiśniewski

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 07:22:27