持续测速 continued-net-test,看你的网络波动

本人需求:
网络不是很好,打游戏总是断网,怀疑路由器或者光猫有问题,但是断流是偶现的,极其不方便捕捉,所以做一个长时间测延迟的软件
软件说明:
使用python开发, 主要是利用了其中的yaml的解析配置模块和最重大的matplotlib来生成图片,可以支持长时间有人/无人值守测网通,生成折线图
主要是封装了ping命令,由于cls命令会导致闪烁,python层面的双缓冲自带bug(调用系统命令会盖掉双缓冲的管道),所以使用c写了gotoxy函数,避免闪烁
使用说明:

下载使用即可,下面是yaml中配置参数,yaml格式中和了xml和json的优点,可读性好,空间占用少,#后面是备注,可以根据自己的需求灵活配置,如果ping超时,会把y轴坐标置为-1,设置range参数时必定注意!

range参数会做一个简单的判断,原型就是python中的lambda函数,如果不满足lambda条件,记录会打印在屏幕,但是不会被记录在折线图统计中!

软件分为有人/无人值守模式,通过yaml配置,有人值守模式测速中途可捕捉回车键,按下回车键后立即停止测速并生成折线图,且测速后并不会自动退出,需要按任意键退出

无人值守模式不会捕捉键盘事件,且运行完成后自动退出

注意事项:

由于导入的matplotlib模块功能极其强劲,且python性能较低

所以软件在启动加载过程会假死几秒

软件结束绘图也会花费数秒时间(如果时间跨度极大,作图时间也呈线性增长)

由于可能有人有超长时间的测速需求,那么折线图的样式就需要配置一下。

主要注意事项是在配置文件,请仔细阅读!

target_ip

:

#

目标域名

/ip

‘baidu.com’

count

:

#

测试次数
10

protocol

:

#

协议,目前只支持

icmp

,勿动

‘icmp’

cell

:

#

测试间隔,单位秒
1

row_num

:

#

保留最近

n

行记录
5

string_length

:

#

行长度,避免出现脏字符,出现脏字符就加长
100

show_pic

:

#

是否展示折线图,

1

代表展示,

0

代表不展示
0

pic_dir

:

#

生成折线图保存的文件夹

‘./output’

datail_graph

:

#

是否开启准确刻度,开启可使时间刻度不重叠,关闭可显著缩小图片宽度,低于

1600

条每条刻度都显示,超过

1600

条刻度会合并处理
0

range

:

#

简单的判断,满足此条件则记录至画布,由于超时会置为

-1

,所以

-1

的情况也要思考

‘i != 0’

unattended

:

#

是否为无人值守,有人值守时,按回车键可强制停止测速且生成图片后且点击任意键退出,无人值守不可中途停止,且结束自动退出
1

运行截图:
下载地址:

https://wwr.lanzoui.com/ie4hKvvms1i

密码:3z9s

源码地址:https://github.com/zhaoxinyuan996/continued-net-test
打包方式:
test.c编译成cprint.so,放在so文件夹中
新建output文件夹(默认输出文件夹)
config.yaml文件
可选:static中存放的是图标文件
pyinstaller打包

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 共45条

请登录后发表评论