zoukankan      html  css  js  c++  java
  • 使用Python编写简单的端口扫描器的实例分享【转】

    转自

    使用Python编写简单的端口扫描器的实例分享_python_脚本之家 http://www.jb51.net/article/76630.htm

     -*- coding:utf8 -*-
    #!/usr/bin/python
    # Python:     2.7.8
    # Platform:    Windows
    # Authro:     wucl
    # Program:     端口扫描
    # History:     2015.6.1
      
    import socket, time, thread
    socket.setdefaulttimeout(3)
      
    def socket_port(ip,port):
      """
      输入IP和端口号,扫描判断端口是否开放
      """
      try:
        if port>=65535:
          print u'端口扫描结束'
        s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        result=s.connect_ex((ip,port))
        if result==0:
          lock.acquire()
          print ip,u':',port,u'端口开放'
          lock.release()
        s.close()
      except:
        print u'端口扫描异常'
      
    def ip_scan(ip):
      """
      输入IP,扫描IP的0-65534端口情况
      """
      try:
        print u'开始扫描 %s' % ip
        start_time=time.time()
        for i in range(0,65534):
          thread.start_new_thread(socket_port,(ip,int(i)))
        print u'扫描端口完成,总共用时 :%.2f' %(time.time()-start_time)
        raw_input("Press Enter to Exit")
      except:
        print u'扫描ip出错'
          
      
    if __name__=='__main__':
      url=raw_input('Input the ip you want to scan:
    ')
      lock=thread.allocate_lock()
      ip_scan(url)

  • 相关阅读:
    结构体
    指针
    数组
    银行取款机系统
    函数
    基础
    IOS系统的安装和Vi的操作模式以及简单的指令
    1203.4——循环语句 之 for
    1203.3——循环语句 之 while
    1203.2——条件语句 之 switch语句
  • 原文地址:https://www.cnblogs.com/paul8339/p/8432312.html
Copyright © 2011-2022 走看看