python实现的多线程端口扫描功能示例

python实现的多线程端口扫描功能示例,第1张

概述本文实例讲述了python实现的多线程端口扫描功能。分享给大家供大家参考,具体如下:

本文实例讲述了python实现的多线程端口扫描功能。分享给大家供大家参考,具体如下:

下面的程序给出了对给定的ip主机进行多线程扫描的Python代码

#!/usr/bin/env python#enCoding: utf-8import socket,sys,thread,timeopenPortNum = 0socket.setdefaulttimeout(3)def usage():  print '''''Usage:  Scan the port of one IP: python port_scan_multithread.py -o <ip>  Scan the port of one IP: python port_scan_multithread.py -m <ip1,ip2,ip3,ip4 ...>  '''  print 'Exit'  sys.exit(1)def socket_port(ip,PORT):  global openPortNum  if PORT > 65535:    print 'Port scanning beyond the port range,interrupt to scan'    sys.exit(1)  s = socket.socket(socket.AF_INET,socket.soCK_STREAM)  result = s.connect_ex((ip,PORT))  if(result == 0):    print ip,PORT,'is open'    openPortNum += 1  s.close()def start_scan(IP):  for port in range(0,65535+1):    thread.start_new_thread(socket_port,(IP,int(port)))    time.sleep(0.006)if __name__ == '__main__':  t = 0  if len(sys.argv)<2 or sys.argv[1] == '-h':    usage()  elif sys.argv[1] == '-o':    ONE_IP = raw_input('Please input ip of scanning: ')    t = time.time()    start_scan(ONE_IP)  elif sys.argv[1] == '-m':    MANY_IP = raw_input('Please input many ip of scanning: ')    IP_SEG = MANY_IP.split(',')    t = time.time()    for i in IP_SEG:      start_scan(i)  print  print 'total open port is %s,scan used time is: %f ' % (openPortNum,time.time()-t)

运行效果图

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python URL *** 作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串 *** 作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录 *** 作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

您可能感兴趣的文章:Python实现的多线程端口扫描工具分享使用Python编写简单的端口扫描器的实例分享python基础教程之udp端口扫描Python端口扫描简单程序python端口扫描系统实现方法实例探究Python以并发方式编写高性能端口扫描器的方法使用Python3制作TCP端口扫描器Python实现简易端口扫描器代码实例基于Python socket的端口扫描程序实例代码Python实现的端口扫描功能示例 总结

以上是内存溢出为你收集整理的python实现的多线程端口扫描功能示例全部内容,希望文章能够帮你解决python实现的多线程端口扫描功能示例所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1204147.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存