码迷,mamicode.com
首页 > 其他好文 > 详细

pyhon-----获取ip的两种方法

时间:2018-08-10 21:21:39      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:计算机   计算   inux   查询   gets   nec   名称   blog   return   

方法一: 

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

import socket

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

 亲测:如果使用手机时,地址为127.0.0.1,如果使用电脑(windows)无线连接时,地址为外网地址。

方法二: 
在windows和Linux系统下均可正确获取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())

 亲测:无论手机还是电脑(windows)无线连接时,地址为设定地址(或自动获取的地址)。

 

原博客地址:https://blog.csdn.net/u013314786/article/details/78962103

pyhon-----获取ip的两种方法

标签:计算机   计算   inux   查询   gets   nec   名称   blog   return   

原文地址:https://www.cnblogs.com/xiaodai0/p/9457082.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!