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中返回字典键的值的values()方法使用
May 22 Python
举例讲解Python中的身份运算符的使用方法
Oct 13 Python
如何在Python函数执行前后增加额外的行为
Oct 20 Python
python之PyMongo使用总结
May 26 Python
python读取视频流提取视频帧的两种方法
Oct 22 Python
python3.5 email实现发送邮件功能
May 22 Python
Python使用numpy模块创建数组操作示例
Jun 20 Python
详解程序意外中断自动重启shell脚本(以Python为例)
Jul 26 Python
django+tornado实现实时查看远程日志的方法
Aug 12 Python
python web框架 django wsgi原理解析
Aug 20 Python
通过实例简单了解Python sys.argv[]使用方法
Aug 04 Python
JAVA SpringMVC实现自定义拦截器
Mar 16 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
实现获取http内容的php函数分享
2014/02/16 PHP
Laravel 4.2 中队列服务(queue)使用感受
2014/10/30 PHP
PHP实现适用于文件内容操作的分页类
2016/06/15 PHP
PDO操作MySQL的基础教程(推荐)
2017/08/18 PHP
Javascript中的window.event.keyCode使用介绍
2011/04/26 Javascript
js multiple全选与取消全选实现代码
2012/12/04 Javascript
JS如何将UTC格式时间转本地格式
2013/09/04 Javascript
JavaScript在for循环中绑定事件解决事件参数不同的情况
2014/01/20 Javascript
js实现点击添加一个input节点
2014/12/05 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
2015/07/31 Javascript
jquery实现带渐变淡入淡出并向右依次展开的多级菜单效果实例
2015/08/22 Javascript
JS实现弹性菜单效果代码
2015/09/07 Javascript
json格式数据的添加,删除及排序方法
2016/01/21 Javascript
js在ie下打开对话窗口的方法小结
2016/10/24 Javascript
ionic2中使用自动生成器的方法
2018/03/04 Javascript
JavaScript调用模式与this关键字绑定的关系
2018/04/21 Javascript
vue集成openlayers加载geojson并实现点击弹窗教程
2020/09/24 Javascript
[03:07]2015国际邀请赛选手档案EHOME.rOtK 是什么让他落泪?
2015/07/31 DOTA
[01:03]PWL开团时刻DAY6——别打我
2020/11/05 DOTA
Django内容增加富文本功能的实例
2017/10/17 Python
Python使用pickle模块报错EOFError Ran out of input的解决方法
2018/08/16 Python
python实现名片管理系统项目
2019/04/26 Python
python实现的发邮件功能示例
2019/09/11 Python
Windows10+anacond+GPU+pytorch安装详细过程
2020/03/24 Python
Python 利用OpenCV给照片换底色的示例代码
2020/08/03 Python
Ubuntu配置Pytorch on Graph (PoG)环境过程图解
2020/11/19 Python
Python新建项目自动添加介绍和utf-8编码的方法
2020/12/26 Python
HTML5网页录音和上传到服务器支持PC、Android,支持IOS微信功能
2019/04/26 HTML / CSS
main 函数执行以前,还会执行什么代码
2013/04/17 面试题
项目经理岗位职责
2013/11/11 职场文书
三好学生先进事迹材料
2014/08/28 职场文书
信息与工商管理职业规划范文:为梦想而搏击
2014/09/11 职场文书
2014年党的群众路线教育实践活动整改措施(个人版)
2014/09/25 职场文书
夫妻房产协议书的格式
2014/10/11 职场文书
SQL基础查询和LINQ集成化查询
2022/01/18 MySQL
微信小程序纯CSS实现无限弹幕滚动效果
2022/09/23 HTML / CSS