내가 배쉬Python을 통한 HTTP 요청 요청 curl이 수행하는 요청 모듈이 프록시를 통해 작동하지 않습니까? 왜?
에서curl -v -u z:secret_key --proxy http://proxy.net:80 \
-H "Content-Type: application/json" https://service.com/data.json
I have already seen this other post on proxies with the Requests module
을 찾고 응답을 얻을 수 있어요이 curl 명령을 사용하여 그리고 그것은 나 파이썬으로 내 코드를 공식화 도움하지만 난 프록시를 통해 요청을해야 . 그러나 적절한 프록시를 제공하는 동안에도 작동하지 않습니다. 아마도 나는 무언가를 보지 않고있는 것일까 요?
>>> requests.request('GET', 'https://service.com/data.json', \
>>> headers={'Content-Type':'application/json'}, \
>>> proxies = {'http' : "http://proxy.net:80",'https':'http://proxy.net:80'}, \
>>> auth=('z', 'secret_key'))
또한 동일한 python 콘솔에서 urllib을 사용하여 요청을 성공시킬 수 있습니다.
>>> import urllib
>>> urllib.urlopen("http://www.httpbin.org").read()
---results---
비 https 주소에 대한 요청을 시도해도 작동하지 않습니다.
>>> requests.get('http://www.httpbin.org')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.6/site-packages/requests/api.py", line 79, in get
return request('get', url, **kwargs)
File "/Library/Python/2.6/site-packages/requests/api.py", line 66, in request
prefetch=prefetch
File "/Library/Python/2.6/site-packages/requests/sessions.py", line 191, in request
r.send(prefetch=prefetch)
File "/Library/Python/2.6/site-packages/requests/models.py", line 454, in send
raise ConnectionError(e)
requests.exceptions.ConnectionError: Max retries exceeded for url:
요청은 너무 멋지고 멋지지만 어떻게하면 실패 할 수 있습니까?
http://pycurl.sourceforge.net/ –
필자는 Mac에서 pycurl을 너무 많이 사용하지 않고 설치하거나 사용할 수 있음을 알고 있습니다. 난 그냥 꽤 굉장하고 깨끗한 요청을 사용하여보다 우아한 솔루션에 대한 노력했다. 생각해 줘서 고마워. – dalanmiller
요청에 사용할 프록시 설정은 여기에서 잘 작동합니다. 이상적으로 우리는 당신의 시선을 재현 할 수 있습니다 ... 그렇지 않으면 우리에게 왜 그것이 작동하지 않는지를 말하면 유일한 다른 옵션입니다. 요청에서 스택 추적을 얻고 있습니까? 컬 (curl)/요청 (requests) 사이에서 관찰되는 다른 효과에 대해서만 달라야한다는 것을 추측 할 수 있기 때문에 네트워크를 모니터하고 실제 요청을 확인할 수도 있습니다. –