Python 多线程C段扫描、检测 Ping扫描脚本的实现


Posted in Python onSeptember 03, 2020

我就废话不多说了,大家还是直接看代码吧~

import subprocess as p
import time
import threading
from queue import Queue
def check_ip(ip):
      w=p.Popen('ping -n 2 '+ip,shell=True,stdout=p.PIPE,stderr=p.PIPE,encoding='gbk')
      result=w.stdout.read()
      # print(result)
      if 'TTL' in result:
        print(ip,'is Up')
def main():
  q=Queue()
  threads=[]
  threads_count=255
  ips = '39.156.69.'
  for i in range(1,255):
    q.put(ips+str(i))
    # print(q.get())
  for i in range(threads_count):
    t=threading.Thread(target=check_ip,args=(q.get(),))
    t.start()
    threads.append(t)
    time.sleep(0.2)
  for i in threads:
    i.join()
  print('all done')
if __name__ == '__main__':
  main()

补充知识:python并发扫描存活主机

看代码吧~

import subprocess
import os
import time
 
def ping(host):
  rc=subprocess.call('ping -c2 %s &> /dev/null' % host,shell=True)
  if rc == 0:
    print('%s:up'% host)
  else:
    print('%s:down'% host)
if __name__ == '__main__':
  ips=['176.130.10.%s' % i for i in range(1,255)]
  for i in ips:
    pid=os.fork()
    if pid==0:
      ping(i)
      exit(0)

以上这篇Python 多线程C段扫描、检测 Ping扫描脚本的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中函数的参数传递与可变长参数介绍
Jun 30 Python
python开发之for循环操作实例详解
Nov 12 Python
Python实现字典依据value排序
Feb 24 Python
利用python批量修改word文件名的方法示例
Oct 17 Python
numpy中loadtxt 的用法详解
Aug 03 Python
Python根据成绩分析系统浅析
Feb 11 Python
Python Selenium 之数据驱动测试的实现
Aug 01 Python
Tensorflow: 从checkpoint文件中读取tensor方式
Feb 10 Python
pandas 像SQL一样使用WHERE IN查询条件说明
Jun 05 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
Jun 18 Python
用Python创建简易网站图文教程
Jun 11 Python
Django框架模板用法详解
Jun 10 Python
Python开发入门——迭代的基本使用
Sep 03 #Python
Python 整行读取文本方法并去掉readlines换行\n操作
Sep 03 #Python
Python多分支if语句的使用
Sep 03 #Python
Python判断字符串是否为合法标示符操作
Sep 03 #Python
图解Python中深浅copy(通俗易懂)
Sep 03 #Python
python简单实现9宫格图片实例
Sep 03 #Python
django使用graphql的实例
Sep 02 #Python
You might like
关于svn冲突的解决方法
2013/06/21 PHP
微信公众号点击菜单即可打开并登录微站的实现方法
2014/11/14 PHP
php实现有序数组旋转后寻找最小值方法
2018/09/27 PHP
javascript编程起步(第四课)
2007/01/10 Javascript
js弹出模式对话框,并接收回传值的方法
2013/03/12 Javascript
jQuery动态地获取系统时间实现代码
2013/05/24 Javascript
JS获取select的value和text值的简单实例
2014/02/26 Javascript
jQuery中:text选择器用法实例
2015/01/03 Javascript
浅谈javascript面向对象程序设计
2015/01/21 Javascript
浅谈JavaScript事件的属性列表
2015/03/01 Javascript
在JavaScript中使用JSON数据
2016/02/15 Javascript
js表单验证实例讲解
2016/03/31 Javascript
逻辑表达式中与或非的用法详解
2016/06/06 Javascript
BootStrap Table 设置height表头与内容无法对齐的问题
2016/12/28 Javascript
Bootstrap Table 在指定列中添加下拉框控件并获取所选值
2017/07/31 Javascript
jQuery选择器之属性过滤选择器详解
2017/09/28 jQuery
js原生日历的实例(推荐)
2017/10/31 Javascript
vue19 组建 Vue.extend component、组件模版、动态组件 的实例代码
2019/04/04 Javascript
Echarts动态加载多条折线图的实现代码
2019/05/24 Javascript
Vue 自适应高度表格的实现方法
2020/05/13 Javascript
python中mechanize库的简单使用示例
2014/01/10 Python
Python多线程下载文件的方法
2015/07/10 Python
Python编写一个优美的下载器
2018/04/15 Python
PyQt5创建一个新窗口的实例
2019/06/20 Python
完美解决python3.7 pip升级 拒绝访问问题
2019/07/12 Python
pytorch快速搭建神经网络_Sequential操作
2020/06/17 Python
Python使用windows设置定时执行脚本
2020/11/12 Python
什么是规则表达式
2012/05/03 面试题
高三地理教学反思
2014/01/11 职场文书
委托书范文
2014/04/02 职场文书
篮球兴趣小组活动总结
2014/07/07 职场文书
世界读书日的活动方案
2014/08/20 职场文书
邹越感恩父母演讲稿
2014/08/28 职场文书
2015年家长学校工作总结
2015/04/22 职场文书
学会掌握自己命运的十条黄金法则:
2019/08/08 职场文书
Mysql数据库命令大全
2021/05/26 MySQL