python之netifaces模块,,#!/usr/bin


#!/usr/bin/python#encoding:utf-8#-*-coding:utf8-*-"""CreateDate:2016/12/26CreateTime:17:53showWindowsorLinuxnetworkNicstatus,suchasMACaddress,Gateway,IPaddress,etc#pythongetNetworkStatus.pyRoutingGateway:10.0.0.1RoutingNICName:enp3s0RoutingNICMACAddress:10:c3:7b:61:22:02RoutingIPAddress:10.0.0.194RoutingIPNetmask:255.255.255.0"""importosimportsystry:importnetifacesexceptImportError:try:command_to_execute="pipinstallnetifaces||easy_installnetifaces"os.system(command_to_execute)exceptOSError:print"CanNOTinstallnetifaces,Aborted!"sys.exit(1)importnetifacesroutingGateway=netifaces.gateways()[‘default‘][netifaces.AF_INET][0]routingNicName=netifaces.gateways()[‘default‘][netifaces.AF_INET][1]forinterfaceinnetifaces.interfaces():ifinterface==routingNicName:#printnetifaces.ifaddresses(interface)routingNicMacAddr=netifaces.ifaddresses(interface)[netifaces.AF_LINK][0][‘addr‘]try:routingIPAddr=netifaces.ifaddresses(interface)[netifaces.AF_INET][0][‘addr‘]#TODO(GuodongDing)Note:OnWindows,netmaskmaybegiveawrongresultin‘netifaces‘module.routingIPNetmask=netifaces.ifaddresses(interface)[netifaces.AF_INET][0][‘netmask‘]exceptKeyError:passdisplay_format=‘%-30s%-20s‘printdisplay_format%("RoutingGateway:",routingGateway)printdisplay_format%("RoutingNICName:",routingNicName)printdisplay_format%("RoutingNICMACAddress:",routingNicMacAddr)printdisplay_format%("RoutingIPAddress:",routingIPAddr)printdisplay_format%("RoutingIPNetmask:",routingIPNetmask)
windows执行的RoutingNICName可能会出现C20B1496-F5CA-4670-A4FB-之类
https://pypi.python.org/pypi/netifaces用法


本文出自 “禅剑一如” 博客,请务必保留此出处http://yanconggod.blog.51cto.com/1351649/1886289

python之netifaces模块

评论关闭