python监控端口流量_监控网卡流量python代码_weixin_39617484的博客-程序员秘密

技术标签: python监控端口流量  

[Python]代码

import re,time

def get_net_info():

flow1 = open('/proc/net/dev')

lines = flow1.read()

flow1.close()

e = re.compile('(eth.)')

r_re = re.compile('eth..(.*?\s)')

r_tr = re.compile(".*eth.*")

match_re = r_re.findall(lines)

match_tr = r_tr.findall(lines)

eth = e.findall(lines)

return (eth,lines,match_re,match_tr)

def net_flow():

net_re_c={}

net_tr_c={}

net_tr_a=[]

for i in get_net_info()[3]:

net_tr_a.append(i.split()[8])

net_tr_a=dict(zip(get_net_info()[0],net_tr_a))

net_re_a = dict(zip(get_net_info()[0],get_net_info()[2]))

print "{eth0:(transmit,receive)"

while True:

time.sleep(1)

net_re_b = dict(zip(get_net_info()[0],get_net_info()[2]))

net_tr_b = []

for i in get_net_info()[3]:

net_tr_b.append(i.split()[8])

net_tr_b=dict(zip(get_net_info()[0],net_tr_b))

for i in net_re_b:

net_re_c[i] = int((float(net_re_b[i])-float(net_re_a[i]))/1024)

for i in net_tr_b:

net_tr_c[i]=int((float(net_tr_b[i])-float(net_tr_a[i]))/1024)

net_re_a = net_re_b

net_tr_a = net_tr_b

net_flow={}

for a in net_re_c:

net_flow[a]=(net_tr_c[a],net_re_c[a])

print net_flow

if __name__ == "__main__":

net_flow()

标签:

代码

版权申明:本站文章部分自网络,如有侵权,请联系:[email protected]

特别注意:本站所有转载文章言论不代表本站观点!

本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39617484/article/details/110979963

智能推荐

HbuildX 用vue打包app调用微信支付_vue 微信支付 打包app_Are姜祁的博客-程序员秘密

我有一个项目是用vue写的,现在要打包成app用的是hbuilderX,目前想到的唯一方法就是用5+app里的调用支付代码,然后去看5+app文档,微信官方支付文档 // 获取请求参数 this.axios({ url: 后端给的请求接口' + 发送请求获取的订单编号, headers: { Aut...

用C#实现在VS里面查看代码段的运行时间_vs查看函数运行时间_Ang_HooVen的博客-程序员秘密

最近在做一个项目,对生产效率要求挺高的。为了分析代码执行的时间,想搞一个可以实时在VS窗口里面查看代码块运行时间的功能,可能这不是较好的方式,目前测试木有问题。 用的是C#写的,新建一个winForm项目。放一个button using System.Data; using System.Drawing; using System.Linq; using System.Text;

优雅的缓存解决方案--设置过期时间_米奇罗的博客-程序员秘密

文章目录1. 前言2. 配置修改配置类测试3. 报错解决小结&参考资料小结参考资料1. 前言上篇文章介绍了利用 SpringCache 和 Redis 设置缓存,但是SpringCache 注解并不支持设置缓存时间,确实很令人头疼。这篇文章将叫你用最简单的方式解决 SpringCache 和 Redis 设置缓存并设置缓存时间。此篇文章基于上篇博客,有啥不懂的地方请查看上篇博客。上...

JavaScript四舍五入并保留两位小数_js四舍五入保留2位小数_老朱.的博客-程序员秘密

在JavaScript中,有一个问题一直被没有很好地解决,就是小数点保留指定的位数,也就是我们通常说的Math.Round()函数。首先,JavaScript有自带的Math.Round()函数,但是返回的是个整数,无法精确到小数点后。Number.toFixed()方法,能保留小数点后面的指定位数,但如果执行2.1.toFixed(2)的话,会返回2.10,而不是我们期待的2.1,所以,这个方法也不太可取。

【动态规划】【leetcode】【中等】300. 最长递增子序列_hbuxiaoshe的博客-程序员秘密

题目:给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。例:输入:nums = [10,9,2,5,3,7,101,18]输出:4解释:最长递增子序列是 [2,3,7,101],因此长度为 4 。原题地址:300. 最长递增子序列解题思路:定义一个数组dp,dp[i]表示以nums[i]结尾的子序列的

路由器的应用场所及作用_路由器应用场景_QAQ_JUIMY的博客-程序员秘密

路由器、交换机的应用场所及作用路由器的应用场所路由器的作用:路由器的主要功能:路由器的应用场所路由器是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备。它能够理解不同的协议,例如某个局域网使用的以太网协议,因特网使用的TCP/IP协议。这样,路由器可以分析各种不同类型网络传来的数据包的目的地址,把非TCP/IP网络的地址转换成TCP/IP地址,或者反之;再根据选定的路由算法把各数据包按最佳路线传送到指定位置。所以路由器可以把非TCP/

随便推点

小程序开发(3)-之wx.request封装_wx.request get方法_sun。。。的博客-程序员秘密

#主要的封装是wxRequest、wxRequestGet、wxRequestPost、wxRequestPromise、headers这几个函数,由于太过赘余不进行截图展示,可以看utils.js#wxRequest方法wxRequest其实跟原始的wx.request没有太大的不同,相当于一个中间键,可以更灵活的配置,可维护性更高,一致请求,首先来解析一些wxRequest,以下简介的说明下获取本地存储的token(ssoAuthToken),如果token存在就设置header,直接.

hdu6063_hdu - 6063_oopslb的博客-程序员秘密

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6063思路:列出几组数据可以发现规律,其实就和n的k次方一样,所以直接快速幂。代码:#include #include #include #include using namespace std;#define ll long long#define ma(a)

linux光盘映像文件挂载,linux系统挂载光盘镜像ISO的方法_耶律大石的博客-程序员秘密

ISO:iso 格式的光盘镜像可以说是最普遍和通用的了,处理起来非常方便,挂载命令:( 假设镜像文件名为 download,挂载点为 /mount-point ,下同)mount -t iso9660 -o loop,user download.iso /mount-pointMDF:mdf 是 Win 下的虚拟光驱软件 Alcohol 120% 的专有格式,你可以用 mdf2iso 把 mdf...

妙用“Check out”与“Check In”_checkin checkout_为自己喝彩0415的博客-程序员秘密

很多时候,我们ITAdministrator再规划文档管理的时候,都会建议Business Users把相关的文档放在一个Library中存储,比如培训方面的,放在Training Document Library集中管理,比如项目相关的,放在Project Document Library集中管理,但这样管理会遇到一些问题,就是文档还处于Draft时,文档author是不期望其他人对文档

推荐文章

热门文章

相关标签