转自https://blog.csdn.net/u013314786/article/details/78962103
win10 或者线下时 第一种方法比较靠谱; 阿里云服务器中两种方法测出的IP一样
输入:
import socket
def get_host_ip():
"""
查询本机ip地址
:return: ip
"""
try:
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(('8.8.8.8', 80))
ip = s.getsockname()[0]
finally:
s.close()
return ip
if __name__ == '__main__':
#第一种方法
print(get_host_ip())
#第二种方法
# 获取本机计算机名称
hostname = socket.gethostname()
# 获取本机ip
ip = socket.gethostbyname(hostname)
print(ip)
输出:
192.168.43.249
192.168.134.1
win10笔记本连接无线真实IP
win10连接有线网络时真实IP