Python 获取本机 ip地址

其它方法如果有多个 ip或者是装了 docker 后,产生多个虚拟的网卡后, 得到的结果 就不准确了

import socket
import uuid

def get_host_ip():
    """
    查询本机ip地址
    :return: ip
    """
    ip = str(uuid.uuid1()).replace('-', '')
    try:
        s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
        s.connect(('8.8.8.8', 80))
        ip = s.getsockname()[0]
    except:
        pass
    finally:
        s.close()
        return ip