python多线程扫描端口示例


Posted in Python onJanuary 16, 2014
# -*- coding: cp936 -*-
import socket
from threading import Thread,activeCount,Lock
from time import ctime
mutex = Lock()
class Loop(Thread):
    def __init__(self,ip,port,que):
        Thread.__init__(self)
        self.ip     = ip
        self.port   = port
        self.que    = que
    def run(self):
        global mutex
        try:
            client = socket.socket()
            indicator = client.connect_ex((self.ip,self.port))
            if mutex.acquire(1):
                if indicator == 0:
                    que.append(self.ip+'\t'+str(self.port))
                else:
                    print self.ip,'\t',str(self.port),'不可达'
                mutex.release()
        except:
            if mutex.acquire(1):
                print self.ip,'\t',str(self.port),'不可达'
                mutex.release()
class Main(Thread):
    def __init__(self,ip,que):
        Thread.__init__(self)
        self.ip  = ip
        self.que = que
    def run(self):
        i = 0
        while i < 65536:
            if activeCount() <= 200:
                Loop(ip=self.ip,port=i,que=self.que).start()
                i = i + 1
if __name__ == '__main__':
    que = []
    ip = raw_input('IP=')
    main = Main(ip = ip,que = que)
    main.start()
    while True:
        if activeCount() <= 1 and main.isAlive() == False:
            break
    print ''
    f = open('portOpen.py','a')
    f.write("'''")
    f.write(ctime()+'\n')
    f.flush()
    for i in range(0,len(que)):
        print que[i]
        f.write('\t'+que[i]+'\n')
        f.flush()
    f.write("'''")
    f.close()
    raw_input()
'''Mon Jan 13 07:12:53 2014
 localhost 135
 localhost 1028
 localhost 8048
 localhost 8080
 localhost 8181
 localhost 8730
 localhost 12040
 localhost 12897
 localhost 18040
 localhost 18611
''''''Tue Jan 14 10:04:58 2014
 localhost 135
 localhost 1028
 localhost 8048
 localhost 8080
 localhost 8181
 localhost 12897
 localhost 18040
 localhost 18611
'''
Python 相关文章推荐
python获取糗百图片代码实例
Dec 18 Python
初学Python实用技巧两则
Aug 29 Python
Python-嵌套列表list的全面解析
Jun 08 Python
python制作企业邮箱的爆破脚本
Oct 05 Python
Python中装饰器学习总结
Feb 10 Python
python替换字符串中的子串图文步骤
Jun 19 Python
PyQt QListWidget修改列表项item的行高方法
Jun 20 Python
Python 3.8正式发布重要新功能一览
Oct 17 Python
Tensorflow 1.0之后模型文件、权重数值的读取方式
Feb 12 Python
解析pip安装第三方库但PyCharm中却无法识别的问题及PyCharm安装第三方库的方法教程
Mar 10 Python
python画环形图的方法
Mar 25 Python
Python爬虫之Selenium中frame/iframe表单嵌套页面
Dec 04 Python
python发送arp欺骗攻击代码分析
Jan 16 #Python
分析python服务器拒绝服务攻击代码
Jan 16 #Python
python获取豆瓣电影简介代码分享
Jan 16 #Python
linux系统使用python获取cpu信息脚本分享
Jan 15 #Python
linux系统使用python监测系统负载脚本分享
Jan 15 #Python
linux系统使用python获取内存使用信息脚本分享
Jan 15 #Python
linux系统使用python监测网络接口获取网络的输入输出
Jan 15 #Python
You might like
PHP UTF8编码内的繁简转换类
2009/07/20 PHP
自己写了一个php检测文件编码的函数
2014/04/21 PHP
round robin权重轮循算法php实现代码
2016/05/28 PHP
PHP如何防止XSS攻击与XSS攻击原理的讲解
2019/03/22 PHP
php探针不显示内存解决方法
2019/09/17 PHP
PHP使用phpunit进行单元测试示例
2019/09/23 PHP
Document:getElementsByName()使用方法及示例
2013/10/28 Javascript
基于jquery实现的图片在各种分辨率下未知的容器内上下左右居中
2014/05/11 Javascript
jQuery插件expander实现图片翻转特效
2015/05/21 Javascript
JS从数组中随机取出几个数组元素的方法
2016/08/02 Javascript
javascript数组定义的几种方法
2017/10/06 Javascript
JS获取当前地理位置的方法
2017/10/25 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
2018/04/05 Javascript
JavaScript中的连续赋值问题实例分析
2019/07/12 Javascript
js利用递归与promise 按顺序请求数据的方法
2019/08/30 Javascript
解决LayUI数据表格复选框不居中显示的问题
2019/09/25 Javascript
解决vue v-for src 图片路径问题 404
2019/11/12 Javascript
小程序websocket心跳库(websocket-heartbeat-miniprogram)
2020/02/23 Javascript
基于Python函数的作用域规则和闭包(详解)
2017/11/29 Python
Python使用matplotlib的pie函数绘制饼状图功能示例
2018/01/08 Python
Python实现获取nginx服务器ip及流量统计信息功能示例
2018/05/18 Python
Pandas_cum累积计算和rolling滚动计算的用法详解
2019/07/04 Python
Django 简单实现分页与搜索功能的示例代码
2019/11/07 Python
深入浅析python 中的self和cls的区别
2020/06/20 Python
JOSEPH官网:英国奢侈时尚品牌
2018/01/31 全球购物
Linux如何命名文件--使用文件名时应注意
2012/01/22 面试题
会计专业自我鉴定范文
2013/12/29 职场文书
司机辞职报告范文
2014/01/20 职场文书
高中打架检讨书
2014/02/13 职场文书
亲子读书活动方案
2014/02/22 职场文书
工作岗位说明书模板
2014/05/09 职场文书
公司离职证明范本(5篇)
2014/09/17 职场文书
教师节晚会主持词
2015/06/30 职场文书
《悲惨世界》:比天空更广阔的是人的心灵
2020/01/16 职场文书
浅析Python中的随机采样和概率分布
2021/12/06 Python
Python PIL按比例裁剪图片
2022/05/11 Python