日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

      歡迎訪問 生活随笔!

      生活随笔

      當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

      python

      怎么用python扫描主机_python扫描主机开放的端口

      發(fā)布時(shí)間:2024/9/27 python 23 豆豆
      生活随笔 收集整理的這篇文章主要介紹了 怎么用python扫描主机_python扫描主机开放的端口 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

      !/usr/bin/python

      -- coding: utf-8 --

      """

      @version: ??

      @author: Guanjie Zhou

      @license: Apache Licence

      @file: dis_port_threading.py

      @time: 17-5-27 上午8:21

      """

      import socket

      import time

      import threading

      socket.setdefaulttimeout(1)

      建立存放開放端口的列表

      open_port = []

      lock = threading._allocate_lock()

      線程列表

      threads = []

      計(jì)數(shù)器

      openNum = 0

      端口掃描函數(shù)

      def socket_port(ip, port):

      global openNum

      try:

      s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

      # 返回連接結(jié)果,成功的話返回為0,失敗返回errno的值

      # 這里要注意的是下邊的函數(shù)里邊的為(ip, port)一個(gè)整體

      result = s.connect_ex((ip, port))

      if result == 0:

      lock.acquire()

      print '[+] %d open' % port

      open_port.append(port)

      openNum += 1

      lock.release()

      except:

      print u"端口掃描異常"

      def ip_scan(ip, port_range=65535):

      # 輸入ip地址后,掃描在范圍內(nèi)的端口占用情況

      try:

      start_time = time.time()

      for port in range(0, port_range):

      t = threading.Thread(target=socket_port, args=(ip, int(port)))

      # 將線程加入線程列表

      threads.append(t)

      t.start()

      # 線程加join

      for t in threads:

      t.join()

      end_time = time.time()

      print u'[] %s掃描完成,總共用時(shí): %.2f' % (ip, (end_time - start_time))

      print u'[] 一共開放%d端口,具體如下: ' % (openNum)

      print open_port

      except:

      print u"端口掃描出錯(cuò)"

      if name == 'main':

      # 輸入要掃描的端口號(hào)

      url = raw_input('Input the ip whitch you want to scan: ')

      # 輸入要掃描的范圍

      port_range = raw_input(u"輸入要掃描的最大端口: ")

      # 判斷為空的時(shí)候,設(shè)置一個(gè)默認(rèn)值

      if not port_range:

      port_range = 65535

      ip_scan(url, int(port_range))

      總結(jié)

      以上是生活随笔為你收集整理的怎么用python扫描主机_python扫描主机开放的端口的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

      如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。