Python多线程扫描端口代码示例

yipeiwu_com6年前Python基础

本文代码实现Python多线程扫描端口,具体实现代码如下。

#coding:utf-8
import socket
import thread
import time
socket.setdefaulttimeout(3)

def socket_port(ip,port):
  try:
   if port>=65535:
     print(u"端口扫描结束!")
   s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)#创建套接字
   result=s.connect_ex((ip,port))#链接端口
   if(result==0):
     print ip,u" : ",port,u"端口开发"
   s.close()
  except:
   print(ip,":",port)
   print(u"端口扫描异常")


def IP_port(data):
  try:
   ip="127.0.0.1"
   t=time.time()
   for i in range(0,1000+1):
     thread.start_new_thread(socket_port,(ip,int(i)))#多线程扫描端口
     time.sleep(0.003)
   print(u"扫描端口完成用时:time_:%s"%(time.time()-t))


  except Exception as e:
   print(e)
   print(ip,i)
   print(u"端口扫描异常")

if __name__ == '__main__':
  print u"开始工作"
  # socket_port("127.0.0.1",135)
  IP_port("127.0.0.1")

结果如下:

开始工作
127.0.0.1 : 135 端口开发
127.0.0.1 : 445 端口开发
扫描端口完成用时:time_:3.00300002098
>>>

总结

以上就是本文关于Python多线程扫描端口代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

Python使用turtule画五角星的方法

本文实例讲述了Python使用turtule画五角星的方法。分享给大家供大家参考。具体实现方法如下: #!/usr/bin/env python import turtle impo...

python实现树形打印目录结构

本文实例为大家分享了python树形打印目录结构的具体代码,供大家参考,具体内容如下 前言 这两天整理数据文件的时候发现,一层层的点击文件夹查看很繁琐,于是想写一个工具来递归打印出文件目...

Python实用工具FuckIt.py介绍

说起 Python 强大的地方,你可能想到是它的优雅、简洁、开发速度快,社区活跃度高。但真正使得这门语言经久不衰的一个重要原因是它的无所不能,因为社区有各种各样的第三库,使得我们用Pyt...

简单总结Python中序列与字典的相同和不同之处

共同点: 1.它们都是python的核心类型,是python语言自身的一部分 核心类型与非核心类型 多数核心类型可通过特定语法来生成其对象,比如"dave"就是创建字符串类型的对象的...

Python中的引用知识点总结

Python中的引用知识点总结

本篇介绍Python中的引用。 首先想一想如图示例。 在python中,值是靠引用来传递来的。 用id()来判断两个变量是否为同一个值的引用。如图。 图解引用。如图。 可变类型...