有时需要把设备的主机名转换成对应的IP地址,下面是一个简单的操作。
import socket def get_remote_machine_info(): # 定义get_remote_machine_info()函数
remote_host = 'www.python.org' # 定义远程设备名称
try: # try-except块
print("IP address of %s: %s" % (remote_host, socket.gethostbyname(remote_host)))
# 打印远端设备名称及对应的IP地址
except socket.error as err_msg: # 如果IP地址没有获取成功,则打印对应的错误消息
print("%s: %s" % (remote_host, err_msg)) if __name__ == '__main__':
get_remote_machine_info()
运行结果:
1.域名正确返回对应的IP地址
$ python3 1_2_remote_machine_info.py
IP address of www.python.org: 151.101.16.223
2.域名错误无法返回IP地址(将www.python.org更改为www.pyon.org),提示对应的错误
$ python3 1_2_remote_machine_info.py
www.pyon.org: [Errno 8] nodename nor servname provided, or not known