URL-адрес следует в заданном c формате: протокол + поддомен + домен + путь + имя файла. Доменная часть URL-адреса - это, по сути, удобный IP-адрес, а это означает, что DNS будет / может разрешить его на точный IP-адрес. Это должно означать, что мы можем заменить доменную часть нашего URL-адреса нашим IP-адресом / портом, и этот код должен работать нормально. Используя протокол HTTP с нашим локальным IP-адресом, мы должны внести следующие изменения:
url = "http://127.0.0.1"
Здесь мы используем порт 80, по умолчанию для протокола HTTP, но мы можем добавить также настраиваемый номер порта для URL-адреса: url = "http://127.0.0.1:8000"
Другой вариант - открыть сокет, отправить данные и дождаться ответа. Вот пример использования TCP-соединения:
import time
import socket
def RTT(host="127.0.0.1", port=80, timeout=40):
# Format our parameters into a tuple to be passed to the socket
sock_params = (host, port)
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
# Set the timeout in the event that the host/port we are pinging doesn't send information back
sock.settimeout(timeout)
# Open a TCP Connection
sock.connect(sock_params)
# Time prior to sending 1 byte
t1 = time.time()
sock.sendall(b'1')
data = sock.recv(1)
# Time after receiving 1 byte
t2 = time.time()
# RTT
return t2-t1