1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| import psutil NetIOCounters = psutil.net_io_counters(pernic=False) """ # bytes_sent: 发送的字节数 # bytes_recv: 接收的字节数 # packets_sent: 发送的包数据量 # packets_recv: 接收的包数据量 # errin: 接收包时, 出错的次数 # errout: 发送包时, 出错的次数 # dropin: 接收包时, 丢弃的次数 # dropout: 发送包时, 丢弃的次数 里面还有一个 pernic 参数, 如果为 True, 则列出所有网卡的信息 """ NetIfAddrs = psutil.net_if_addrs() """ {'Loopback Pseudo-Interface 1': [snicaddr(family=<AddressFamily.AF_INET: 2>, address='127.0.0.1', netmask='255.0.0.0', broadcast=None, ptp=None), snicaddr(family=<AddressFamily.AF_INET6: 23>, address='::1', netmask=None, broadcast=None, ptp=None)], '本地连接': [snicaddr(family=<AddressFamily.AF_LINK: -1>, address='10-E7-C6-2D-AB-2C', netmask=None, broadcast=None, ptp=None), snicaddr(family=<AddressFamily.AF_INET: 2>, address='10.36.23.50', netmask='255.255.255.0', broadcast=None, ptp=None), snicaddr(family=<AddressFamily.AF_INET6: 23>, address='fe80::d472:4d86:72f6:4da1', netmask=None, broadcast=None, ptp=None)]} """ NetIfStats = psutil.net_if_stats() """ {'Loopback Pseudo-Interface 1': snicstats(isup=True, duplex=<NicDuplex.NIC_DUPLEX_FULL: 2>, speed=1073, mtu=1500), '本地连接': snicstats(isup=True, duplex=<NicDuplex.NIC_DUPLEX_FULL: 2>, speed=100, mtu=1500)} """ NetConnections = psutil.net_connections(kind='inet') """ [sconn(fd=-1, family=<AddressFamily.AF_INET: 2>, type=1, laddr=addr(ip='127.0.0.1', port=57096), raddr=addr(ip='127.0.0.1', port=57095), status='ESTABLISHED', pid=7456), sconn(fd=-1, family=<AddressFamily.AF_INET: 2>, type=1, laddr=addr(ip='127.0.0.1', port=57230), raddr=addr(ip='127.0.0.1', port=57229), status='ESTABLISHED', pid=20992), sconn(fd=-1, family=<AddressFamily.AF_INET: 2>, type=1, laddr=addr(ip='127.0.0.1', port=57184), raddr=addr(ip='127.0.0.1', port=57251), status='ESTABLISHED', pid=20992)] ... 里面接受一个参数, 默认是 "inet", 当然我们也可以指定为其它, 比如 "tcp" """
|