V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
dididaren
V2EX  ›  Python

奇葩了, requests 必须通过 charles 才能访问网络,求救

  •  
  •   dididaren · Jul 19, 2019 · 4958 views
    This topic created in 2479 days ago, the information mentioned may be changed or developed.
    之前 python 使用 requests 访问网站,抓包一直都挺正常的

    但现在却不行了

    要想使用 requests,必须走 charles 的代理才行

    如果 关掉 charles 或者 取消勾选 charles proxy 设置项里的 macOS proxy,requests.get/post 就陷入假死状态。

    卸载了 charles,删除了所有的 charles 配置 ,重置了无线网络,开关机 N 次 都无法解决。

    推测是 charles 接管了 mac 的 sockes 代理? 现在毫无头绪, 请教大佬。
    Supplement 1  ·  Jul 19, 2019
    [解决了,华为路由器的问题]

    家里有 2 台华为路由器,之前是有怀疑可能是无线网在搞贵,但是两个路由器都试过,问题依旧,所以就排除了路由器的问题

    刚才翻箱底找到了一台旧的华硕路由器,直接连接光猫,然后一切都正常了

    接着测试.....

    用电脑连接华硕路由器, 华硕路由连接华为路由器,华为路由器连接光猫,一切正常。

    用电脑连接华为路由器,华为路由器连接光猫,问题又出现了。

    两台华为路由器同一型号,同一版本......坑。
    24 replies    2019-07-20 19:14:47 +08:00
    nyanyh
        1
    nyanyh  
       Jul 19, 2019
    终端里 http_proxy 没改?
    misaka19000
        2
    misaka19000  
       Jul 19, 2019
    wireshark 抓包分析
    dididaren
        3
    dididaren  
    OP
       Jul 19, 2019
    @nyanyh 配置文件里没找到有更改的痕迹,终端平时都是直接复制这两条语句来使用 socks 代理 export http_proxy=socks5://127.0.0.1:1080
    export https_proxy=socks5://127.0.0.1:1080 但现在也不行了,export 后,使用 curl ip.sg 命令后,报错:curl: (7) Failed to receive SOCKS5 connect request ack.
    dididaren
        4
    dididaren  
    OP
       Jul 19, 2019
    @misaka19000 没用过 wireshark,我研究一下
    ik
        5
    ik  
       Jul 19, 2019 via iPhone
    unset http_proxy

    unset https_proxy
    mixure
        6
    mixure  
       Jul 19, 2019
    去 Activity Monitor 看下;
    如果不卸载,重启是不管用的,这个之前我也遇到过;卸载了就不知道了
    netstu
        7
    netstu  
       Jul 19, 2019
    因为你设置了代理,你在哪设置的取消就可以了
    mmnsghgn
        8
    mmnsghgn  
       Jul 19, 2019
    requests 的参数里写了 proxies 吗
    Northxw
        9
    Northxw  
       Jul 19, 2019
    首先,你 Chrome 访问 baidu.com, 如果可以,那说明不是 Charles 接管了 PC 的网络出口;
    然后,你改用 urllib 或者 requests_html 访问网页,如果能访问到,更说明不是 Charles 的问题;
    最后,信任证书添加了吗? 你再去看一下。

    比较菜,不知道说的对不对
    Huelse
        10
    Huelse  
       Jul 19, 2019
    如果是 win10,检查设置-网络-代理 里面的设置,
    如果是 mac,可能也有类似的网络设置
    simple2025
        11
    simple2025  
       Jul 19, 2019 via Android
    http_proxy 吧
    dididaren
        12
    dididaren  
    OP
       Jul 19, 2019
    @ik unset 了,没有效
    ik
        13
    ik  
       Jul 19, 2019 via iPhone
    @dididaren curl -v ip.sg 结果看看
    dididaren
        14
    dididaren  
    OP
       Jul 19, 2019
    @ik
    ~ unset http_proxy
    ➜ ~ unset https_proxy
    ➜ ~ curl -v ip 点 sg
    * Rebuilt URL to: ip 点 sg/
    * Could not resolve host: ip 点 sg
    * Closing connection 0
    curl: (6) Could not resolve host: ip 点 sg
    dididaren
        15
    dididaren  
    OP
       Jul 19, 2019
    @ik 回复的时候系统提示不能包含外链,所有.用中文代替了
    dididaren
        16
    dididaren  
    OP
       Jul 19, 2019
    @ik
    ➜ ~ export http_proxy=socks5://127.0.0.1:1080
    ➜ ~ curl -v ip 点 sg
    * Rebuilt URL to: ip 点 sg/
    * Trying 127.0.0.1...
    * TCP_NODELAY set
    * SOCKS5 communication to ip 点 sg:80
    * Could not resolve host: ip 点 sg
    * Closing connection 0
    curl: (6) Could not resolve host: ip 点 sg
    dididaren
        17
    dididaren  
    OP
       Jul 19, 2019
    @mixure 卸载了,能搜索 到店 charles 文件也删除了,重装后也没有以前的配置的,但问题还是一样
    dididaren
        18
    dididaren  
    OP
       Jul 19, 2019
    @Northxw 证书没有问题,抓包也正常,问题就是 要使用必须要开启抓包功能,一旦关闭 charles,或者勾掉 代理 mac 的流量,就没办法使用
    misaka19000
        19
    misaka19000  
       Jul 19, 2019
    你这个访问的是什么域名啊?换一下百度的域名试一试能访问吗
    yutou527
        20
    yutou527  
       Jul 19, 2019 via Android
    看系统设置 网络 代理
    jaskle
        21
    jaskle  
       Jul 20, 2019 via Android
    想黑华为!作为狗子的我第一个不愿意!
    ik
        22
    ik  
       Jul 20, 2019 via iPhone   ❤️ 1
    解决了就好
    chloey027
        23
    chloey027  
       Jul 20, 2019
    同 10 楼,20 楼,原先我也只能用代理爬,win10, 系统那里代理设置关闭,然后刷新了下 dns, 重启网络设置,ok,注意是否 requests 设置了默认代理
    brobird
        24
    brobird  
       Jul 20, 2019
    你是不是路由器上开了什么“安全防护”之类的功能……关掉应该就好了?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1477 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 57ms · UTC 16:26 · PVG 00:26 · LAX 09:26 · JFK 12:26
    ♥ Do have faith in what you're doing.