安装测试工具。官网www.speedtest.net

pip install speedtest-cli

使用下面脚本,每天随机找3个服务器测试一下,发到指定用户的邮箱里。

#!/bin/env python

# -*- coding:utf-8 -*-

# Date: 2017-05-10

# Author: simonzhang

# web: www.simonzhang.net

# Email: simon-zzm@163.com

### END INIT INFO

import os, sys

import random

from string import strip

import smtplib

from email.mime.text import MIMEText

#### 基础设置

mail_host = 'smtp.exmail.qq.com'

mail_user = 'warning'

mail_pwd = 'aaa'

mail_to = "simon-zzm@163.com"

mail_cc = "simon-zzm@"

####

def mail_send(text):

content = '%s' % text

msg = MIMEText(content)

msg['From'] = mail_user

msg['Subject'] = 'dsg net report'

msg['To'] = mail_to

msg['CC'] = mail_cc

try:

s = smtplib.SMTP()

s.connect(mail_host)

s.login(mail_user, mail_pwd)

s.sendmail(mail_user, [mail_to, mail_cc], msg.as_string())

s.close()

except Exception, e:

print e

def speedTestStatus(serverId):

getData = os.popen('/usr/local/bin/speedtest-cli --server=%s --share' % serverId).readlines()

for oneData in getData:

if oneData[-1] == '\n':

oneData = oneData[:-1]

if oneData.find('Download:') > -1:

download = strip(oneData).split(' ')

downStatus = "%s%s" % (download[1], download[2])

if oneData.find('Upload:') > -1:

upload = strip(oneData).split(' ')

upStatus = "%s%s" % (upload[1], upload[2])

if oneData.find('Share results:') > -1:

pic = strip(oneData).split(' ')

picStatus = "%s" % (pic[-1])

return downStatus, upStatus, picStatus

def getChainServerList():

getData = os.popen('/usr/local/bin/speedtest-cli --list|grep -i china').readlines()

idList = []

for oneData in getData:

idList.append(strip(oneData.split(') ')[0]))

return idList

def main():

# 查找测试服务器中国服务器id

# 并随机选出三个

getID = random.sample(getChainServerList(), 3)

# 进行测试,并返回结果。

context = ""

for oneId in getID:

down, up, pic = speedTestStatus(oneId)

context = "%s testId:%s down:%s up:%s pic:%s\n" % (context, oneId, down, up, pic)

mail_send(context)

if __name__ == '__main__':

main()

mysql运行测速_定时检测网测速相关推荐

  1. 高中体测数据可视化(体测分数_男生,体测分数-女生)

    #1.对男1000米跑.男引体进行等宽分箱操作,分成3份,并使用饼图绘制百分比 import numpy as  np import pandas as pd import matplotlib.py ...

  2. java实时获取android网速_获取Android网速的另一种方法

    之前,在LOSP4.2上使用的是Android自带的接口来实现获取网速并显示在通知栏,可是到了4.3以后发现这个接口无论如何,返回值都是-1,无奈之下只得另寻办法 功夫不负有心人,我还是找到了一个方法 ...

  3. mysql 运行sql 编码_关于解决运行 sql 文件时, 找不到 MySQL 默认编码 utf8mb4 的问题...

    关于解决运行 sql 文件时, 找不到 MySQL 默认编码 utf8mb4 的问题 本人小白一名, 最近碰到了一个问题, 在 navicat 导入 MySQL 文件时, 报出 MySQL 找不到 u ...

  4. 如何控制局域网网速_科普 | 路由器网速突然变慢怎么办?

    腾达路由器Q&A 有微博网友提问@Tenda腾达 路由器网速变慢怎么办? 可以从下面几点入手

  5. mysql数据库添加商品_如何检测mysql 数据库执行了哪些sql语句 ecshop如何添加商品属性 ecshop 商品属性批量采集入库...

    打开mysql日志,检测添加属性时候的msyql语句如下. 121126 22:41:55     158 Connect     root@localhost on 158 Query       ...

  6. 树莓派定时运行python程序_定时发送免费天气预报(邮件)短信通知的Python脚本,通用Linux,也适合树莓派...

    最近在摆弄Python和树莓派,故写了个定时发送免费天气预报(邮件)短信通知的Python脚本,通用Linux,也适合树莓派或者Windows系统,为Python3版本,Python2环境下使用的话, ...

  7. 查看mysql运行的用户组_第六天、用户、组、权限、grep

    第六天.用户.组.权限.grep 权限总结表 操作 源目录权限 文件权限 目标目录权限 rm删文件 wx - - mv改名 wx - - mv移动文件 wx r wx cp复制文件 x r wx &g ...

  8. Mysql运行在内核空间_思考mysql内核之初级系列6—innodb文件管理 | 学步园

    在上一篇里面,bingxi和alex思考了information_schema,这个一直在innodb外围打转.没有进入到innodb的内部.在后续的文章中,以innodb的为主,逐个思考.Bingx ...

  9. mysql 压测结果_用mysqlslap压测mysql

    参考文献:http://my.oschina.net/costaxu/blog/108568 上面网友详细的列举了用mysqlslap对mysql的压力测试结果,我也照葫芦画瓢试了一次,结果如下: 以 ...

最新文章

  1. MySQL数据库环境使用全过程
  2. 云计算网络基础第八天
  3. 移民申请--申请澳大利亚技术移民的职业评估有技巧(2)
  4. 北京内推 | 微软亚洲研究院机器学习组招聘AI for Health实习生
  5. NET问答: 是否有通用的方法判断一个 Type 是 Number ?
  6. Jfinal 文件上传
  7. 应用市场中包名(package name)的唯一性
  8. 十个不可不看的Matlab GUI
  9. 【转载保存】lucene正则查询使用注意
  10. Java运行时内存工作过程
  11. Homography 知多少?
  12. Linux编程训练网站,OK6410汇编程序练习
  13. 系统运维包括哪些内容_UI设计内容包括哪些?
  14. Java 日期格式工具类
  15. Livereload介绍
  16. WINDOWS2008 SERVER服务器上网实战
  17. java 取磁盘阵列容量_硬盘阵列 Raid 的区别及容量计算方式
  18. Physically Based Rendering——史上最容易理解的BRDF中D函数NDF的中文资料
  19. 圆形Shape输出面积和周长
  20. android 内部 存储空间不足,安卓手机内存空间不足的解决方法

热门文章

  1. 习题 4.15 用条件编译方法实现以下功能:输入一行电报文字,可以任选两种输出,一为原文输出;一为将字母变成其下一字母。用#define命令来控制是否要译成密码。
  2. 设备树下的platform驱动编写
  3. Praat脚本-014 | 删除选择区域内的所有边界条
  4. 使用Filemail免费发送大文件
  5. solidworks装配体改为柔性_三维软件技巧知识:SOLIDWORKS方程式如何控制焊接机架尺寸!...
  6. 性格内向的人,是否适合做产品经理 ?
  7. 有问候自好友来,不亦悦乎
  8. Strlen和Sizeof的区别
  9. CortexM处理器的一些特性记录
  10. linux内置变量大全,(转)linux awk 内置变量使用介绍