溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python實(shí)現(xiàn)的對(duì)本地host127.0.0.1主機(jī)進(jìn)行掃描端口功能示例

發(fā)布時(shí)間:2020-09-13 05:51:03 來源:腳本之家 閱讀:279 作者:徐為波 欄目:開發(fā)技術(shù)

本文實(shí)例講述了Python實(shí)現(xiàn)的對(duì)本地host127.0.0.1主機(jī)進(jìn)行掃描端口功能。分享給大家供大家參考,具體如下:

前面一篇《Python IP端口掃描工具類》詳細(xì)介紹了端口掃描功能,這里分析一下針對(duì)本地localhost端口掃描的方法。

具體代碼如下:

#!/usr/local/bin/python
#-*- coding: UTF-8 -*-
#端口掃描器
import socket
import thread
import time
socket.setdefaulttimeout(3) #設(shè)置了全局默認(rèn)超時(shí)時(shí)間
def socket_port(ip,PORT): #掃描開放端口
  try:
    if PORT>=65535:
      print u"端口掃描結(jié)束0-65535"
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    #s.settimeout(float(1)) #延時(shí)5S
    #s.connect((ip,PORT))
    result=s.connect_ex((ip,PORT))
    if(result==0):
      print ip,u":",PORT,u"端口開放"
    s.close()
  except:
    print u"掃描端口異常2"
def IP__port(data): #掃描端口
  try:
    #data="127.0.0.1"
    t=time.time()
    for i in range(0,1000 + 1):  #65535
      thread.start_new_thread(socket_port,(data,int(i)))
      time.sleep(0.003) #確保先運(yùn)行Seeker中的方法
    print u'掃描端口完成用時(shí) time:%f' % (time.time()-t)
  except:
    print u"掃描端口異常1"
if __name__=='__main__':
  #socket_port("127.0.0.1",21) #掃描開放端口
  IP__port("127.0.0.1") #多線程

運(yùn)行結(jié)果如下:

Python實(shí)現(xiàn)的對(duì)本地host127.0.0.1主機(jī)進(jìn)行掃描端口功能示例

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python進(jìn)程與線程操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI