Python 获取本机 IP 地址

  1. 方法一
  2. 方法二

https://blog.csdn.net/u013314786/article/details/78962103

方法一

通常使用 socket.gethostbyname() 方法即可获取本机IP地址,但有时候获取不到(比如没有正确设置主机名称),示例代码如下:

import socket

# 获取本机计算机名称
hostname = socket.gethostname()
# 获取本机ip
ip = socket.gethostbyname(hostname)
print(ip)

方法二

可正确获取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())

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 bin07280@qq.com

文章标题:Python 获取本机 IP 地址

文章字数:142

本文作者:Bin

发布时间:2018-09-15, 16:06:22

最后更新:2019-08-06, 00:07:35

原始链接:http://coolview.github.io/2018/09/15/Python/Python%20%E8%8E%B7%E5%8F%96%E6%9C%AC%E6%9C%BA%20IP%20%E5%9C%B0%E5%9D%80/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录