python 实现的IP 存活扫描脚本


Posted in Python onDecember 10, 2020

下载地址

ActiveOrNot

用于处理 oneforall 等子域名扫描工具的结果去重 + 主机存活扫描

参数

-f --file  指定存放ip或子域名的文件,默认 ip.txt
-t --thread  设置线程数,默认 50

python3 ActiveOrNot.py -f ip.txt -t 12

具体代码 ActiveOrNot.py

from threading import Thread
from queue import Queue
import requests
from time import time
import argparse

headers = {
 "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36"
}


def ping(url, new_ip):
 url = url.strip()
 if (not url.startswith('http://')) and (not url.startswith('https://')):
  url = 'http://' + url
 try:
  req = requests.get(url, headers=headers, timeout=2)
  new_ip.put(url + ' -- ' + str(req.status_code))
  print("%s 存活" % url)
 except:
  print("%s 不存活" % url)


def new_list(file):
 with open(file, 'r') as f:
  new_ip = []
  ip_list = f.readlines()
  for ip in ip_list:
   ip = ip.strip().replace('http://', '').replace('https://', '')
   if ip:
    if not (ip in new_ip):
     new_ip.append(ip)
  return new_ip


def main(file, th):
 begin_time = time()
 new_ip = Queue()
 ip_list = new_list(file)
 j = 0
 length = len(ip_list)
 while j < length:
  threads = []
  for i in range(th):
   t = Thread(target=ping, args=(ip_list[j], new_ip))
   t.start()
   threads.append(t)
   j += 1
   if j == length:
    break
  for thread in threads:
   thread.join()
 with open('NewIP.txt', 'a+') as nf:
  while not new_ip.empty():
   nf.write(new_ip.get()+'\n')
 end_time = time()
 run_time = end_time - begin_time
 print("总共耗时 %s 秒"% run_time)


if __name__ == '__main__':
 parser = argparse.ArgumentParser(description='url active scan')
 parser.add_argument("-f", "--file", help="指定文件", default='ip.txt')
 parser.add_argument("-t", "--thread", help="设置线程", default=50)
 args = parser.parse_args()
 file = args.file
 th = args.thread
 main(file, th)

以上就是python 实现的IP 存活扫描脚本的详细内容,更多关于python ip存活扫描的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
详解Python中的from..import绝对导入语句
Jun 21 Python
详解如何使用Python编写vim插件
Nov 28 Python
Python实现对一个函数应用多个装饰器的方法示例
Feb 09 Python
浅谈pandas中shift和diff函数关系
Apr 08 Python
python pandas中对Series数据进行轴向连接的实例
Jun 08 Python
Python定义函数功能与用法实例详解
Apr 08 Python
python tools实现视频的每一帧提取并保存
Mar 20 Python
解决Mac下使用python的坑
Aug 13 Python
python matplotlib模块基本图形绘制方法小结【直线,曲线,直方图,饼图等】
Apr 26 Python
Python-openpyxl表格读取写入的案例详解
Nov 02 Python
Python开发工具Pycharm的安装以及使用步骤总结
Jun 24 Python
Python中如何处理常见报错
Jan 18 Python
class类在python中获取金融数据的实例方法
Dec 10 #Python
Python制作简单的剪刀石头布游戏
Dec 10 #Python
python给list排序的简单方法
Dec 10 #Python
详解java调用python的几种用法(看这篇就够了)
Dec 10 #Python
Python利用imshow制作自定义渐变填充柱状图(colorbar)
Dec 10 #Python
详解Python GUI编程之PyQt5入门到实战
Dec 10 #Python
python 实现ping测试延迟的两种方法
Dec 10 #Python
You might like
ninety plus是什么?ninety plus咖啡好吗?
2021/03/04 新手入门
mysq GBKl乱码
2006/11/28 PHP
php中将地址生成迅雷快车旋风链接的代码[测试通过]
2011/04/20 PHP
PHP5.2中PDO的简单使用方法
2016/03/25 PHP
PHP实现留言板功能的详细代码
2017/03/25 PHP
Javascript 事件流和事件绑定
2009/07/16 Javascript
JavaScript 图片预览效果 推荐
2009/12/22 Javascript
Javascript 判断是否存在函数的方法
2013/01/03 Javascript
jQuery事件用法实例汇总
2014/08/29 Javascript
使用javascript实现Iframe自适应高度
2014/12/24 Javascript
JavaScript实现自动弹出窗口并自动关闭窗口的方法
2015/08/06 Javascript
浅谈js对象属性 通过点(.) 和方括号([]) 的不同之处
2016/10/29 Javascript
vue中路由验证和相应拦截的使用详解
2017/12/13 Javascript
react-router4 配合webpack require.ensure 实现异步加载的示例
2018/01/18 Javascript
vue项目实现记住密码到cookie功能示例(附源码)
2018/01/31 Javascript
详解react关于事件绑定this的四种方式
2018/03/09 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
使用Vue中 v-for循环列表控制按钮隐藏显示功能
2019/04/23 Javascript
详解微信小程序支付流程与梳理
2019/07/16 Javascript
js实现一个简易计算器
2020/03/30 Javascript
Element Input输入框的使用方法
2020/07/26 Javascript
[02:41]DOTA2英雄基础教程 谜团
2013/12/10 DOTA
[02:40]DOTA2英雄基础教程 炼金术士
2013/12/23 DOTA
Python列表list解析操作示例【整数操作、字符操作、矩阵操作】
2017/07/25 Python
python Socket之客户端和服务端握手详解
2017/09/18 Python
python实现对列表中的元素进行倒序打印
2019/11/23 Python
python3实现飞机大战
2020/11/29 Python
Philosophy美国官网:美国美容品牌
2016/08/15 全球购物
Nanushka官网:匈牙利服装品牌
2019/08/14 全球购物
伊莱克斯阿根廷网上商店:Tienda Electrolux
2021/03/08 全球购物
委托与事件是什么关系?为什么要使用委托
2014/04/18 面试题
消防安全检查制度
2014/02/04 职场文书
采购部部长岗位职责
2014/02/06 职场文书
公司授权委托书样本
2014/09/15 职场文书
面试通知邮件
2015/04/20 职场文书
小学生一年级(书信作文)
2019/08/13 职场文书