Метод POST в httplib python выдает ошибку «socket.gaierror: [Errno -2] Имя или служба не известны» - PullRequest
3 голосов
/ 19 августа 2011

Следующий код выдает ошибку «socket.gaierror: [Errno -2] Имя или служба не известны».

import httplib, urllib
attrs = urllib.urlencode({"username":"admin", "password":"admin"})
conn = httplib.HTTPSConnection("https://x.x.x.x:8181")
conn.request("POST", "/login", attrs)
response = conn.getresponse()
print response.status, response.reason

Я не хочу использовать модуль urllib2. Кто-нибудь может мне помочь? ... Как сохранить состояние этого сервера ?, чтобы в следующий раз я непосредственно опубликовал значения для URI.

Ответы [ 3 ]

1 голос
/ 19 августа 2011

Я думаю, что вы не указали порт не по умолчанию правильно: http://docs.python.org/release/2.6.7/library/httplib.html#httplib.HTTPSConnection

Попробуйте вместо этого:

   conn = httplib.HTTPSConnection("https://x.x.x.x",port=8181)
0 голосов
/ 18 июня 2012

Я получил аналогичную ошибку с httplib.HTTPConnection, обнаружил, что изменение URL-адреса с "http://x.x.x.x" на" x.x.x.x "работает для меня. Попробуйте удалить" http://" или "https://".

conn = httplib.HTTPSConnection("x.x.x.x:8181")
0 голосов
/ 08 ноября 2011

Попробуйте следующий код:

conn = httplib.HTTPSConnection("x.x.x.x",port=8181)
...