网站如何知道我在使用代理?

2024-06-25 05:24:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我可以从我的机器连接到verizon站点:

>>> import requests
>>> res=requests.get('https://tv.verizon.com/api/fullSearch/as/rows/30/start/0?assetTypeCode=movies')
>>> res
<Response [200]>

但是,如果我使用一个代理——它在另一个网站上工作,比如Google——它不会返回响应:

>>> res=requests.get(
    'https://tv.verizon.com/api/fullSearch/as/rows/30/start/0?assetTypeCode=movies', 
     proxies={
        'http': 'http://xx:yy@23.82.141.126:29842' ,
        'https': 'http://xx:yy@23.82.141.126:29842'}
   )
[ request just hangs... ]

但在另一个网站上,它是有效的:

    >>> res=requests.get(
...         'https://google.com', 
...          proxies={
...             'http': 'http://xx:yy@23.88.141.126:29842',
...             'https': 'http://xx:yy@23.88.141.126:29842'}
...        )
>>> res
<Response [200]>

为什么会发生这种情况?我怎样才能用代理成功地请求Verizon呢?你知道吗


Tags: httpscomapihttpgetasrestv
1条回答
网友
1楼 · 发布于 2024-06-25 05:24:12

我知道tor网络使用可用的公共出口节点列表here。您希望连接的站点可能正在使用这样的查找表/列表。你知道吗

原因是代理经常被用来隐藏脆弱的行为,比如黑客攻击或服务器过载(拒绝服务攻击)。断开连接会使从代理进行拒绝服务攻击变得更加困难。你知道吗

请注意:我在这里用tor作为例子。这里可能涉及其他列表

相关问题 更多 >