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检测手机QQ在线状态的脚本代码
Feb 10 Python
跟老齐学Python之正规地说一句话
Sep 28 Python
python3利用smtplib通过qq邮箱发送邮件方法示例
Dec 03 Python
Python中static相关知识小结
Jan 02 Python
使用Python读取大文件的方法
Feb 11 Python
Django开发的简易留言板案例详解
Dec 04 Python
python 将大文件切分为多个小文件的实例
Jan 14 Python
详解python中TCP协议中的粘包问题
Mar 22 Python
Scrapy-Redis结合POST请求获取数据的方法示例
May 07 Python
Django urls.py重构及参数传递详解
Jul 23 Python
关于python中的xpath解析定位
Mar 06 Python
30行Python代码实现高分辨率图像导航的方法
May 22 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
PHP 日志缩略名的创建函数代码
2010/05/26 PHP
PHP错误Cannot use object of type stdClass as array in错误的解决办法
2014/06/12 PHP
php导出csv文件,可导出前导0实例代码
2016/11/16 PHP
Laravel Validator自定义错误返回提示消息并在前端展示
2019/05/09 PHP
常用的javascript function代码
2008/05/23 Javascript
jquery 上下滚动广告
2009/06/17 Javascript
event.X和event.clientX的区别分析
2011/10/06 Javascript
JS构建页面的DOM节点结构的实现代码
2011/12/09 Javascript
JQuery分别取得每行最后一列和最后一行的示例代码
2013/08/18 Javascript
Javascript Web Slider 焦点图示例源码
2013/10/10 Javascript
js实现遮罩层划出效果是生成div而不是显示
2014/07/29 Javascript
js跨域问题浅析及解决方法优缺点对比
2014/11/08 Javascript
js实现登录验证码
2016/12/22 Javascript
jQuery实现可拖拽3D万花筒旋转特效
2017/01/03 Javascript
Angular2开发——组件规划篇
2017/03/28 Javascript
Nodejs进阶之服务端字符编解码和乱码处理
2017/09/04 NodeJs
Vue-cli项目部署到Nginx服务器的方法
2019/11/01 Javascript
微信小程序点击滚动到指定位置的实现
2020/05/22 Javascript
jQuery+ajax实现文件上传功能
2020/12/22 jQuery
js闭包的9个使用场景
2020/12/29 Javascript
[56:46]Liquid vs IG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
python编码总结(编码类型、格式、转码)
2016/07/01 Python
Python错误提示:[Errno 24] Too many open files的分析与解决
2017/02/16 Python
Python多线程实现同步的四种方式
2017/05/02 Python
Python使用Phantomjs截屏网页的方法
2018/05/17 Python
基于numpy中的expand_dims函数用法
2019/12/18 Python
pyCharm 设置调试输出窗口中文显示方式(字符码转换)
2020/06/09 Python
html5 input输入实时检测以及延时优化
2018/07/18 HTML / CSS
SmartBuyGlasses丹麦:网上购买名牌太阳镜、眼镜和隐形眼镜
2016/10/01 全球购物
Tod’s英国官方网站:意大利奢华手工制作手袋和鞋履
2019/03/15 全球购物
工商企业管理应届生求职信
2013/11/03 职场文书
自荐信格式
2013/12/01 职场文书
学校出纳员岗位职责
2014/03/18 职场文书
表彰大会策划方案
2014/05/13 职场文书
邓小平理论心得体会
2014/09/09 职场文书
学校领导干部民主生活会整改方案
2014/09/29 职场文书