最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python基于socket函數(shù)實現(xiàn)端口掃描

 更新時間:2020年05月28日 16:04:24   作者:心淚  
這篇文章主要為大家詳細(xì)介紹了python基于socket函數(shù)實現(xiàn)端口掃描,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了python基于socket實現(xiàn)端口掃描的具體代碼,供大家參考,具體內(nèi)容如下

自學(xué)Python一段時間,寫個端口掃描器練練手。有什么不足之處,請見諒
這是基于socket函數(shù)對端口進(jìn)行端口掃描

所以,首先要導(dǎo)入socket模塊

from socket import *

其次,通過正側(cè)表達(dá)式來判斷輸入的是不是IP地址

compile_ip = re.compile(  
    '^(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9])\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$')

這里是核心代碼

# -*- coding: utf-8 -*-
from socket import *
import re
from pip._vendor.distlib.compat import raw_input

def portscaner(host,port):         
  try:
    s = socket(AF_INET, SOCK_STREAM) # 實例化socket
    s.connect((host,port))    #對對應(yīng)主機的對應(yīng)端口發(fā)起連接
    print('主機%s的%s端口處于打開狀態(tài)'%(host,port))
    s.close()   #關(guān)閉連接
    Export_Data(port)   #調(diào)用Export_Date
  except Exception as e:
    pass   #利用異常處理,對無法建立連接的端口pass掉


def ChecK_Host(host): #利用正側(cè)表達(dá)式匹配host,判斷是否符合IP地址的格式  并且輸入不為空 
  compile_ip = re.compile(  
    '^(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9])\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$')
  if compile_ip.match(host) and len(host)!=0:  #host符合IP地址的格式且不為空值返回True,否則返回False
    return True
  else:
    return False
    

def Export_Data(port):   #導(dǎo)出數(shù)據(jù)
  port = str(port)     #將port轉(zhuǎn)換為字符串類型
  date = open('Active_Port.txt', 'a') #在文件尾部寫入數(shù)據(jù),Active_Port.txt,若不存在就新建文件
  date.write(port+'\n')      #將port并行寫入文件
  date.close()    #不要忘了關(guān)閉文件



def main(host):   #主模塊
  if ChecK_Host(host):   #通過ChecK_Host()函數(shù)return 的布爾值進(jìn)行判斷輸入的IP地址是否有誤
    for port in range(1,65536):  #這里可以改成1024
      portscaner(host, port)
    print('\n')
    print('已將結(jié)果導(dǎo)出到 Active_Port.txt')
  else:
    print('IP地址無錯誤,請重新輸入?。?!')



if __name__ == '__main__':
  print('<' * 12 + '單線程端口掃描器' + '>' * 12)
  host = input('請輸入有效的目標(biāo)IPv4地址:')
  main(host)

raw_input('Press Enter to exit...')    #當(dāng)腳本執(zhí)行完后,等待鍵入Enter回車才退出程序(可有可無,主要是為了封裝成exe可執(zhí)行文件后,執(zhí)行完程序dos界面不自動退出)

測試結(jié)果

可見目的主機的21端口處于開放狀態(tài)

掃描結(jié)束后,將存活的端口寫入到Active_Port.txt

這里沒有用到多線程,通過循環(huán),一個一個端口進(jìn)行連接,掃描速度非常慢。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 帶你一文讀懂Python垃圾回收機制

    帶你一文讀懂Python垃圾回收機制

    這篇文章主要介紹了帶你一文讀懂Python垃圾回收機制,如果對其垃圾回收機制不了解,很多時候?qū)懗龅?nbsp;Python 代碼會非常低效,需要的朋友可以參考下
    2023-04-04
  • Python pydotplus安裝及可視化圖形創(chuàng)建教程

    Python pydotplus安裝及可視化圖形創(chuàng)建教程

    這篇文章主要為大家介紹了Python pydotplus安裝及可視化圖形創(chuàng)建教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • 深入了解Django View(視圖系統(tǒng))

    深入了解Django View(視圖系統(tǒng))

    這篇文章主要介紹了簡單了解Django View(視圖系統(tǒng)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • Python實現(xiàn)短網(wǎng)址ShortUrl的Hash運算實例講解

    Python實現(xiàn)短網(wǎng)址ShortUrl的Hash運算實例講解

    這篇文章主要介紹了Python實現(xiàn)短網(wǎng)址ShortUrl的Hash運算,較為詳細(xì)的分析了Python短網(wǎng)址運算的算法原理與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2015-08-08
  • Python實戰(zhàn)之多種音樂格式批量轉(zhuǎn)換

    Python實戰(zhàn)之多種音樂格式批量轉(zhuǎn)換

    Pydub是一個基于ffmpeg的Python音頻處理模塊,封裝了許多ffmpeg底層接口,因此用它來做音樂歌曲文件格式轉(zhuǎn)換會非常方便。今天給大家介紹它的音樂文件格式轉(zhuǎn)換功能,幾乎支持所有音樂音頻格式,需要的可以參考一下
    2022-06-06
  • Python+request+unittest實現(xiàn)接口測試框架集成實例

    Python+request+unittest實現(xiàn)接口測試框架集成實例

    這篇文章主要介紹了Python+request+unittest實現(xiàn)接口測試框架集成實例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • Python實現(xiàn)?MK檢驗示例代碼

    Python實現(xiàn)?MK檢驗示例代碼

    這篇文章主要介紹了Python實現(xiàn)?MK檢驗,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • python使用json.dumps輸出中文問題

    python使用json.dumps輸出中文問題

    這篇文章主要介紹了python使用json.dumps輸出中文問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • python3獲取控制臺輸入的數(shù)據(jù)的具體實例

    python3獲取控制臺輸入的數(shù)據(jù)的具體實例

    在本篇內(nèi)容里小編給大家分享的是一篇關(guān)于python3獲取控制臺輸入的數(shù)據(jù)的具體實例內(nèi)容,需要的朋友們可以學(xué)習(xí)下。
    2020-08-08
  • Python + Requests + Unittest接口自動化測試實例分析

    Python + Requests + Unittest接口自動化測試實例分析

    這篇文章主要介紹了Python + Requests + Unittest接口自動化測試,結(jié)合具體實例形式分析了Python使用Requests與Unittest模塊實現(xiàn)接口自動化測試相關(guān)操作技巧,需要的朋友可以參考下
    2019-12-12

最新評論

金塔县| 旬邑县| 汝阳县| 商水县| 洪湖市| 新营市| 遂平县| 高陵县| 景东| 阿图什市| 福清市| 长宁县| 清水河县| 勐海县| 香河县| 高唐县| 阳信县| 正定县| 苍南县| 阳江市| 广宁县| 呼和浩特市| 民县| 全州县| 阿荣旗| 金华市| 安宁市| 磐安县| 祁阳县| 本溪市| 沂源县| 昭平县| 西昌市| 洪湖市| 洪雅县| 城市| 兴宁市| 阳高县| 长子县| 宜丰县| 雅安市|