def python_multi(n)_Python:MultiPing.py
最近接到一个需求,拿到一批IP列表做PING的操作,当然可以利用fping,自己也用多线程写了一个,还不错,6w条IP在15分钟内PING完,记录一下代码吧。
#!/usr/bin/python
import os,sys,time
import threading
import re
import subprocess
lifeline = re.compile(r"[0-9]+\.\d*")
deadline = re.compile(r"100% packet loss")
def ping(ip):
pingaling = subprocess.Popen(["ping","-q", "-c 3", ip], shell=False, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
while 1:
pingaling.stdout.flush()
line = pingaling.stdout.readline()
tmp=re.sub(ip,"",line)
if not line: break
igot = re.findall(lifeline,tmp)
deadping = re.findall(deadline,tmp)
if len(igot)==4:
#print ip,igot[2]
pingoutput=str(ip.strip())+','+str(igot[2])
if deadping:
#print ip,deadping
pingoutput=str(ip.strip())+','+'200000'
output = open('/home/abc/upload/ip_list.txt.output', 'a+')
output.write(pingoutput+'\n')
def main():
iplist=open("/home/abc/upload/ip_list.txt", "r")
print time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
for i in iplist:
ip=i
while threading.activeCount()>300:
time.sleep(0.1)
t=threading.Thread(target=ping,args=([ip,]))
t.start()
print time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
if __name__=='__main__':
main()
def python_multi(n)_Python:MultiPing.py相关推荐
- python 银行工作_Python:银行系统实战(一)
最近突然抽筋想做一下大学时候做过的银行系统实战~ 代码就发在这里啦~ 学弟学妹们请查收~ 不过是python版本的,你们也用不上... 两个py文件,一个是后台系统处理的,一个是总控py 文件如下: ...
- python引用其他文件提示找不到模块_Python:为什么导入的模块不能引用另一个导入的模块?...
如果您以这种方式修改了subtwo.py,那么它将起作用 import subone print subone.a 当你在subtwo.py中执行subone.a时,你试图访问subtwo.py和命名 ...
- scrapy框架_Python:Scrapy框架
" Scrapy是一个适用爬取网站数据.提取结构性数据的应用程序框架,它可以应用在广泛领域:Scrapy 常应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中.通常我们可以很简单的通 ...
- python异步处理请求_python:tornado+wsgi异步处理请求
tornado版本: start_app.py # coding:gbk import tornado.web import tornado.wsgi import wsgiref.simple_se ...
- MXNet的训练基础脚本:base_module.py
写在前面:在MXNet中有一个很重要的脚本:base_module.py,这个脚本中的BaseModule类定义了和模型实现相关的框架.另外还有一个脚本module.py会在另外一篇博客中讲,这个类继 ...
- Python参数校验工具:validate.py
一直都在找一个比较好用的参数校验工具包(Python),这次终于找到了就做个记录. 包名:validate.py 安装方式:(pip已收入, 当前最新版本是1.3.0) pip install val ...
- python pygame小游戏_python:利用pygame实现消消乐小游戏
消消乐记分小游戏GUI界面 文件结构规划 定义config.py文件存储相关参数:包括界面的宽高,整个方格行列个数,总格数等等. 定义utils.py文件用于存放基础的类和函数:包括整个消除拼图类,游 ...
- python黑科技库:FuckIt.py,让你代码从此远离bug
今天给你推荐的这个库叫 "FuckIt.py",名字一看就是很黄很暴力的那种,作者是这样介绍它的: FuckIt.py uses state-of-the-art technolo ...
- python 文件状态_Python:如何访问文件的状态
一.案例:在某些项目中,需要获取文件的状态 文件状态:os.stat(path) 1.文件的类型:普通文件.目录.符号链接.设备文件或管道(一般在Linux上)... 2.文件的访问权限:一般为读.写 ...
最新文章
- iOS引入第三发库引发的错误linker command failed with exit code 1
- Windows App开发之集合控件与数据绑定
- 保驾护航金三银四,妈妈再也不用担心我找工作了!
- ACM/ICPC 之 四道MST-Prim解法(POJ1258-POJ1751-POJ2349-POJ3026)
- 铺磁砖,给定M*N的格子,用u*v的瓷砖去铺满,有多少种铺法
- 酒店房间登记与计费管理系统《c语言课程设计》 文库,C语言课程设计--酒店房间登记与计费管理系统程序代码...
- 博途v16tia项目服务器,博途V16与scout TIA
- 浅谈压缩感知(二十二):压缩感知重构算法之正则化正交匹配追踪(ROMP)
- Fiddler自动保存抓包内容到文件
- CMU 15-213 Introduction to Computer Systems学习笔记(10) The Memory Hierarchy
- 使用冷门装机助手/流氓软件导致被捆绑安装各种奇奇怪怪软件的问题
- Unity 移动的几种方法(从某一点移动到另外一点)
- 写在博客文章后,关于为什么要写博客,特此提醒自己。
- 2022-01-08:数组中只有0和1,每过1代,0旁边只有1个1,当前0会变成1。每过1代,0旁边有2个1,当前0还是0。 比如10001,经过1代,会变成11011,再过1代,还是11011 。
- 基于hi3531压缩YUV-D1 H264(sample_enc例子改写)
- So Easy! HDU - 4565(构造共轭+矩阵快速幂)
- (萌新的数电学习)用 VHDL语言设计一个异或门
- STM32F103--CRL,CRH寄存器
- 计算机学院 运动会稿,强健体魄,英姿飒爽——计算机学院举办师生迷你运动会...
- 2018年5月下6月初 IT 技术类 招聘应聘情况.