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

相关文章

opencv3/C++实现视频背景去除建模(BSM)

opencv3/C++实现视频背景去除建模(BSM)

视频背景建模主要使用到: 高斯混合模型(Mixture Of Gauss,MOG) createBackgroundSubtractorMOG2(int history=500, d...

python获取当前运行函数名称的方法实例代码

python获取当前运行函数名称的方法实例代码 摘要: c/c++中获取函数所在源码名,函数名和行号的方法很简单 __FILE__,__FUNCTION__和__LINE__ pytho...

Python设计实现的计算器功能完整实例

Python设计实现的计算器功能完整实例

本文实例讲述了Python设计实现的计算器功能。分享给大家供大家参考,具体如下: 通过利用PYTHON 设计处理计算器的功能如: 1 - 2 * ( (60-30 +(-40/5) *...

一步步解析Python斗牛游戏的概率

过年回家,都会约上亲朋好友聚聚会,会上经常会打麻将,斗地主,斗牛。在这些游戏中,斗牛是最受欢迎的,因为可以很多人一起玩,而且没有技术含量,都是看运气(专业术语是概率)。 斗牛的玩法是:...

python将list转为matrix的方法

如下所示: import numpy as np tmp = [[1,2,3],[4,5,6],[7,8,9]]; np.matrix(tmp) 以上这篇python将list转...