Python简单获取网卡名称及其IP地址的方法【基于psutil模块】

时间:2021-11-25 15:39:16

本文实例讲述了Python简单获取网卡名称及其IP地址的方法。分享给大家供大家参考,具体如下:

windows上想知道网卡和IP地址,可以使用ipconfig命令,在linux上可以使用ifconfig命令,得到输出后,可以解析输出内容,我要介绍的方法更为简单,只需要安装一个名为psutil的第三方库即可

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# -*- coding: utf-8 -*-
#! python2
import psutil
#获取网卡名称和其ip地址,不包括回环
def get_netcard():
 netcard_info = []
 info = psutil.net_if_addrs()
 for k,v in info.items():
 for item in v:
  if item[0] == 2 and not item[1]=='127.0.0.1':
  netcard_info.append((k,item[1]))
 return netcard_info
if __name__ == '__main__':
 print get_netcard()

本机测试运行结果:

[('\xb1\xbe\xb5\xd8\xc1\xac\xbd\xd3', '192.168.3.37')]

补充:这里使用了psutil模块,若提示Unresolved import: psutil,则需要使用如下命令进行安装:

?
1
pip install psutil

psutil模块功能十分强大,可针对系统资源进行读取监控(包括CPU、内存、磁盘、网络等)。实现了同等命令行工具提供的功能,如ps、top、lsof、netstat、ifconfig、who、df、kill、free、nice、ionice、iostat、iotop、uptime、pidof、tty、taskset、pmap等。

关于psutil模块的安装与详细使用方法可参考:http://www.zzvips.com/article/141472.html

希望本文所述对大家Python程序设计有所帮助。

原文链接:https://blog.csdn.net/KWSY2008/article/details/52510846