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聊天程序实例代码分享
Nov 18 Python
使用python调用浏览器并打开一个网址的例子
Jun 05 Python
对python xlrd读取datetime类型数据的方法详解
Dec 26 Python
利用Python实现微信找房机器人实例教程
Mar 10 Python
python实现祝福弹窗效果
Apr 07 Python
Python学习笔记之变量、自定义函数用法示例
May 28 Python
python实现知乎高颜值图片爬取
Aug 12 Python
Python 实现黑客帝国中的字符雨的示例代码
Feb 20 Python
python GUI库图形界面开发之pyinstaller打包python程序为exe安装文件
Feb 26 Python
浅谈多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
Jun 30 Python
Selenium环境变量配置(火狐浏览器)及验证实现
Dec 07 Python
python周期任务调度工具Schedule使用详解
Nov 23 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文件读写操作相关函数总结
2014/11/18 PHP
jquery.ui.progressbar 中文文档
2009/11/26 Javascript
js通过googleAIP翻译PHP系统的语言配置的实现代码
2011/10/17 Javascript
JavaScript String.replace函数参数实例说明
2013/06/06 Javascript
js单例模式的两种方案
2013/10/22 Javascript
js 赋值包含单引号双引号问题的解决方法
2014/02/26 Javascript
JavaScript利用正则表达式去除日期中的“-”
2014/07/01 Javascript
jQuery操作JSON的CRUD用法实例
2015/02/25 Javascript
Javascript OOP之面向对象
2016/07/31 Javascript
JavaScript页面实时显示当前时间实例代码
2016/10/23 Javascript
JS使用cookie实现只出现一次的广告代码效果
2017/04/22 Javascript
对angularJs中2种自定义服务的实例讲解
2018/09/30 Javascript
[57:16]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS VG第二场
2014/05/26 DOTA
[00:32]2018DOTA2亚洲邀请赛OpTic出场
2018/04/03 DOTA
复制粘贴功能的Python程序
2008/04/04 Python
Django静态资源URL STATIC_ROOT的配置方法
2014/11/08 Python
利用Python的Django框架中的ORM建立查询API
2015/04/20 Python
基于DataFrame改变列类型的方法
2018/07/25 Python
浅谈python连续赋值可能引发的错误
2018/11/10 Python
opencv3/C++ 平面对象识别&amp;透视变换方式
2019/12/11 Python
Python ATM功能实现代码实例
2020/03/19 Python
IntelliJ 中配置 Anaconda的过程图解
2020/06/01 Python
python中if嵌套命令实例讲解
2021/02/25 Python
CSS3 3D制作实战案例分析
2016/09/18 HTML / CSS
绝对令人的惊叹的CSS3折叠效果(3D效果)整理
2012/12/30 HTML / CSS
css3进行截取替代js的substring
2013/09/02 HTML / CSS
美国第一个网上卖鞋零售商:OnlineShoes.com
2017/09/24 全球购物
贝嫂喜欢的婴儿品牌,个性化的婴儿礼物:My 1st Years
2017/11/19 全球购物
Fresh馥蕾诗英国官网:法国LVMH集团旗下高端天然护肤品牌
2018/11/01 全球购物
方法名是否可以与构造器的名字相同
2012/06/04 面试题
大学毕业生自荐书怎么写?
2014/01/06 职场文书
全民健身日活动方案
2014/01/29 职场文书
英语邀请函范文
2015/02/02 职场文书
防卫过当辩护词
2015/05/21 职场文书
2019年图书室自查报告范本
2019/10/12 职场文书
python pandas 解析(读取、写入)CSV 文件的操作方法
2022/12/24 Python