码迷,mamicode.com
首页 > 编程语言 > 详细

python:使用netifaces模块获取本机IP网关等信息

时间:2016-11-24 00:30:46      阅读:525      评论:0      收藏:0      [点我收藏+]

标签:本机ip;python;netifaces

python获取本机IP有很多种方法,可每种方法都有局限性。

使用netifaces模块获取本机IP网关等信息,需要安装netifaces模块,不管windows还是linux都可以通用。

一、程序:

#!/usr/bin/env python2
# -*- coding: utf-8 -*-
#实现本地网卡IP
#需要安装netifaces模块
def GetNetworkIP():
    #获取本地网卡IP地址
    import netifaces
    #routingGateway = netifaces.gateways()[‘default‘][netifaces.AF_INET][0]   #网关
    routingNicName = netifaces.gateways()[‘default‘][netifaces.AF_INET][1]   #网络适配器信息

    for interface in netifaces.interfaces():
        if interface == routingNicName:
            #print (netifaces.ifaddresses(interface))
            try:
                routingIPAddr = netifaces.ifaddresses(interface)[netifaces.AF_INET][0][‘addr‘]   #获取IP
            except KeyError:
                pass
    #print ("Routing IP Address:%s"% routingIPAddr)
    return routingIPAddr
if __name__ == "__main__":
    try:
        print ("Routing IP Address:",GetNetworkIP())
    except:
        print ("Unable to get the address, there may not be installed netifaces module! command: pip install netifaces")


二、效果图:

技术分享



本文出自 “都市布衣” 博客,请务必保留此出处http://sunday208.blog.51cto.com/377871/1875822

python:使用netifaces模块获取本机IP网关等信息

标签:本机ip;python;netifaces

原文地址:http://sunday208.blog.51cto.com/377871/1875822

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