没有合适的资源?快使用搜索试试~ 我知道了~
首页利用Python实现网络测试的脚本分享
利用Python实现网络测试的脚本分享
574 浏览量
更新于2023-05-27
评论 1
收藏 60KB PDF 举报
主要给大家介绍了关于利用Python实现网络测试的方法,文中给出了详细的示例代码供大家参考学习,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
资源详情
资源评论
资源推荐

利用利用Python实现网络测试的脚本分享实现网络测试的脚本分享
主要给大家介绍了关于利用Python实现网络测试的方法,文中给出了详细的示例代码供大家参考学习,对大家
具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
前言前言
最近同学让我帮忙写一个测试网络的工具。由于工作上的事情,断断续续地拖了很久才给出一个相对完整的版本。其实,我
Python用的比较少,所以基本都是边查资料边写程序。
程序的主要逻辑如下:程序的主要逻辑如下:
读取一个excel文件中的ip列表,然后使用多线程调用ping统计每个ip的网络参数,最后把结果输出到excel文件中。
代码如下所示:代码如下所示:
#! /usr/bin/env python
# -*- coding: UTF-8 -*-
# File: pingtest_test.py
# Date: 2008-09-28
# Author: Michael Field
# Modified By:intheworld
# Date: 2017-4-17
import sys
import os
import getopt
import commands
import subprocess
import re
import time
import threading
import xlrd
import xlwt
TEST = [
'220.181.57.217',
'166.111.8.28',
'202.114.0.242',
'202.117.0.20',
'202.112.26.34',
'202.203.128.33',
'202.115.64.33',
'202.201.48.2',
'202.114.0.242',
'202.116.160.33',
'202.202.128.33',
]
RESULT={}
def usage():
print "USEAGE:"
print " %s -n TEST|excel name [-t times of ping] [-c concurrent number(thread nums)]" %sys.argv[0]
print " TEST为简单测试的IP列表"
print " -t times 测试次数;默认为1000;"
print " -c concurrent number 并行线程数目:默认为10"
print " -h|-?, 帮助信息"
print " 输出为当前目录文件ping_result.txt 和 ping_result.xls"
print "for example:"
print " ./ping_test.py -n TEST -t 1 -c 10"
def div_list(ls,n):
if not isinstance(ls,list) or not isinstance(n,int):
return []
ls_len = len(ls)
print 'ls length = %s' %ls_len
if n<=0 or 0==ls_len:
return []
if n > ls_len:
return []
elif n == ls_len:
return [[i] for i in ls]
else:
j = ls_len/n
k = ls_len%n
### j,j,j,...(前面有n-1个j),j+k
#步长j,次数n-1
ls_return = []
for i in xrange(0,(n-1)*j,j):
ls_return.append(ls[i:i+j])

















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0