Python Glossary English

все Python 3socketфункция

socket.getnameinfo()

имена и адреса

Обратное к getaddrinfo: переводит адрес сокета (host, port) в пару строк (имя хоста, имя службы).

Синтаксис

host, service = socket.getnameinfo(sockaddr, flags)

С flags=0 функция делает обратный DNS-запрос и ищет имя службы, то есть зависит от сети и /etc/services. Флаги NI_NUMERICHOST и NI_NUMERICSERV запрещают поиск имён — так получают адрес и порт в каноническом числовом виде без сети. Порт возвращается строкой даже в числовом режиме: '80', а не 80.

Примеры

import socket
flags = socket.NI_NUMERICHOST | socket.NI_NUMERICSERV
print(socket.getnameinfo(('127.0.0.1', 80), flags))  # → ('127.0.0.1', '80')
print(socket.getnameinfo(('127.0.0.1', 443), 0))  # → ? ('localhost', 'https')

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности