Не удается связаться с IP с помощью Python httplib - PullRequest
0 голосов
/ 11 ноября 2018

Я не могу подключиться ни к чему в моей сети, используя IP-адрес хоста. Я могу открыть браузер и подключиться, и я могу нормально пропинговать хост. Вот мой код:

from httplib import HTTPConnection

addr = 192.168.14.203
conn = HTTPConnection(addr)
conn.request('HEAD', '/') 

res = conn.getresponse()

if res.status == 200:
    print "ok"
else:
    print "problem : the query returned %s because %s" % (res.status, res.reason)

Возвращается следующая ошибка:

socket.error: [Errno 51] Network is unreachable

Если я изменю адрес addr на google.com, я получу ответ 200. Что я делаю не так?

1 Ответ

0 голосов
/ 11 ноября 2018

Вы должны проверить адрес и настройки прокси.

Для отправки HTTP-запросов я рекомендую библиотеку запросов . Он намного более высокоуровневый и удобный для пользователя по сравнению с httplib и позволяет устанавливать прокси :

import requests

addr = "http://192.168.14.203"
response = requests.get(addr)

# if you need to set a proxy:
response = requests.get(addr, proxies={"http": "...proxy address..."})

# to avoid using any proxy if your system sets one by default
response = requests.get(addr, proxies={"http": None})
...