Python requests.exceptions.ConnectionError: HTTPSConnectionPool: Se rebasaron los rebashs máximos con url: Se rechazó la conexión)

Así que estoy tratando de usar una API ( http://twittercounter.com/pages/api ) para obtener algunos datos de la red. Al usar mi clave de API directamente a través del navegador, obtengo los resultados requeridos. Pero al usar la función requests.get () en python, recibo un error, el rastreo se da aquí.

código:

>>> import requests >>> r = requests.get('https://api.twittercounter.com/?apikey=XXXX&twitter_id=57947109') 

rastrear:

  File "", line 1, in  File "/usr/lib/python2.7/site-packages/requests/api.py", line 55, in get return request('get', url, **kwargs) File "/usr/lib/python2.7/site-packages/requests/api.py", line 44, in request return session.request(method=method, url=url, **kwargs) File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 382, in request resp = self.send(prep, **send_kwargs) File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 485, in send r = adapter.send(request, **kwargs) File "/usr/lib/python2.7/site-packages/requests/adapters.py", line 372, in send raise ConnectionError(e) requests.exceptions.ConnectionError: HTTPSConnectionPool(host='api.twittercounter.com', port=443): Max retries exceeded with url: /?apikey=XXXX&twitter_id=57947109 (Caused by : [Errno 111] Connection refused) 

Hice aproximadamente 10 conexiones con esta clave, y el límite de velocidad es de 100, así que estoy seguro de que no estoy excediendo el límite. Alguien puede ayudarme porfavor. Soy más o menos un noob con peticiones y http.

EDITAR: Intenté establecer el agente del navegador en los encabezados de solicitud

Intenté esto para cambiar el agente del navegador, y todavía no funciona

 >>> headers = { ... 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0'} >>> url = 'https://api.twittercounter.com/?apikey=09792d72d848c55a5b6b9a1bf3bb225a&twitter_id=57947109' >>> response = requests.get(url, headers=headers) 

Estoy recibiendo el mismo rastreo que la última vez.

Este método funcionó perfectamente para mí:

 >>> import requests >>> url = 'http://api.twittercounter.com/' >>> payload = {'apikey': 'XXXXXX', 'twitter_id':53687449} >>> requests.get(url, params=payload)  

Si bien no pude resolver este problema por mi cuenta, encontré una solución alternativa a esto, en donde esto funciona, en lugar de usar solicitudes, tuve que usar httplib y luego el módulo ast . El código que utilicé es:

 >>> import httplib >>> conn = httplib.HTTPConnection("api.twittercounter.com") >>> conn.request("GET", "?apikey=XXXX&twitter_id=15160529") >>> r1 = conn.getresponse() >>> a = r1.read() >>> import ast >>> b = ast.literal_eval(a) 

Ahora, b es un diccionario que tiene todos los datos que estoy buscando. Sin embargo, si alguien puede decirme la solución adecuada a este error, sería muy útil.