ARL icon indicating copy to clipboard operation
ARL copied to clipboard

代理使用异常

Open s7safe opened this issue 2 years ago • 5 comments

图片 代理报错,填了代理地址 地址格式如下 http://xxxx.com/dadad

s7safe avatar Jan 19 '22 03:01 s7safe

图片 全部报错如下 [root@VM-16-11-centos docker]# docker-compose exec worker bash [root@5cc6481259bb code]# python3.6 -m test.test_proxy_url E

ERROR: test_proxy_url (main.TestProxyURL)

Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py", line 597, in urlopen self._prepare_proxy(conn) File "/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py", line 807, in _prepare_proxy conn.connect() File "/usr/local/lib/python3.6/site-packages/urllib3/connection.py", line 324, in connect self._tunnel() File "/usr/lib64/python3.6/http/client.py", line 929, in _tunnel message.strip())) OSError: Tunnel connection failed: 404 NOT FOUND

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/requests/adapters.py", line 449, in send timeout=timeout File "/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py", line 641, in urlopen _stacktrace=sys.exc_info()[2]) File "/usr/local/lib/python3.6/site-packages/urllib3/util/retry.py", line 399, in increment raise MaxRetryError(_pool, url, error or ResponseError(cause)) urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='www.baidu.com', port=443): Max retries exceeded with url: / (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 404 NOT FOUND',)))

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/code/test/test_proxy_url.py", line 12, in test_proxy_url conn = http_req(target) File "/code/app/utils/conn.py", line 37, in http_req conn = getattr(requests, method)(url, **kwargs) File "/usr/local/lib/python3.6/site-packages/requests/api.py", line 75, in get return request('get', url, params=params, **kwargs) File "/usr/local/lib/python3.6/site-packages/requests/api.py", line 61, in request return session.request(method=method, url=url, **kwargs) File "/usr/local/lib/python3.6/site-packages/requests/sessions.py", line 542, in request resp = self.send(prep, **send_kwargs) File "/usr/local/lib/python3.6/site-packages/requests/sessions.py", line 655, in send r = adapter.send(request, **kwargs) File "/usr/local/lib/python3.6/site-packages/requests/adapters.py", line 510, in send raise ProxyError(e, request=request) requests.exceptions.ProxyError: HTTPSConnectionPool(host='www.baidu.com', port=443): Max retries exceeded with url: / (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 404 NOT FOUND',)))


Ran 1 test in 0.510s

FAILED (errors=1)

s7safe avatar Jan 19 '22 03:01 s7safe

@s7safe
第一张图使用有问题。

第二张图是因为代理地址写错了

我看最后那个curl的图,应该填http://203.xxx:8080/ , 不是填random那个服务器的地址。

1c3z avatar Jan 19 '22 04:01 1c3z

用的随机代理工具,抓取的代理所以curl回来的是抓取代理的工具,random那个是代理的获取服务器,看了您的回答可能是我的理解有错误,ARL里面的是固定的代理是吗

那么那样的代理该如何搭建呢

s7safe avatar Jan 19 '22 04:01 s7safe

@s7safe

  1. 可以购买,
  2. 或者自己用代理软件搭建。

1c3z avatar Jan 19 '22 05:01 1c3z

@1c3z 我搭建了一个动态的IP池子抓取免费的IP,然后出来的地址是http://xxx.xxx.xxx.xxx/random 每次访问都会进行出来一个IP+端口 ,我在docker文件里直接填的http://xxx.xxx.xxx.xxx/random 图片

这样报的错

s7safe avatar Jan 19 '22 05:01 s7safe