欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python3 批量獲取對(duì)應(yīng)端口服務(wù)的實(shí)例

 更新時(shí)間:2019年07月25日 09:14:23   作者:BYS_PrintF_  
今天小編就為大家分享一篇python3 批量獲取對(duì)應(yīng)端口服務(wù)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

思路懶得寫了.

依賴python-nmap,先在電腦上裝nmap,不然用不了.openpyxl實(shí)際上沒(méi)有用到,可以不安裝.

makeEx()沒(méi)用到,懶得刪了.

#依賴python-nmap,openpyxl包
import nmap
import time
import openpyxl
from multiprocessing.dummy import Pool as ThreadPool
import multiprocessing
# 1.同目錄下創(chuàng)建一個(gè)input.txt,放入ip地址列(從xlsx中直接粘貼即可)
# 2.輸出表格位置,需要先創(chuàng)建這個(gè)表格
expath=''
inputFile='remain.txt'

#掃描端口
#port='1521,1158,2100,3306,1433,1434,5000,5432,27017,6379,11211,80,8080,443,8000,8081,7001,9080,9090,22,23,10027,3389,5631,111,6000,135,445,139,21,25,110,69,161,162,53,5901,5902,2601-2609 '
# port='1-65535'
#默認(rèn)命令
arg='-Pn -T4 -sV'
#輸出文件名

import time
time_rq = time.strftime('%Y-%m-%d', time.localtime(time.time()))
outPutFile = time_rq + inputFile



def readfile(path,lock):
  # 返回url列表
  file = open(path, 'r',encoding='utf-8')
  urlList=[]
  portList=[]
  for eachline in file.readlines():
    #獲得地址段
    x=eachline.split()
    url=x[0]
    port=x[1]
    # add=IPy.IP(url)#地址段列表
    # for u in add:
    #   ip=u.__str__();
    #   urlList.append(ip)
    urlList.append(url)
    portList.append(port)


  file.close()
  # 造infoList
  infoList=[]
  for index,url in enumerate(urlList):
    info={'hostname':url,'port':portList[index],'arg':arg,'lock':lock}
    infoList.append(info)

  return infoList

def scan(info):

  hostName=info['hostname']
  port=info['port']
  lock=info['lock']
  print(hostName+' '+port+' 掃描開(kāi)始')

  scanner=nmap.PortScanner()
  scanner.scan(hosts=hostName,ports=port,arguments=arg)

  # print(res)
  out=open(outPutFile,'a+',encoding='utf-8')
  # out.write()
  state=scanner[hostName].state()
  tcp_ports=scanner[hostName].all_tcp()
  print(hostName+' '+state)
  for ports in tcp_ports:
    if scanner[hostName]['tcp'][ports]['state'] =='open' :
      st=hostName+' '+str(ports)+' '+scanner[hostName]['tcp'][ports]['name']+'\n'
      # lock.acquire()
      out.write(st)
      print(st)    
      # lock.release()

  # print(hostName)
  out.close()


def makeEx():
  print('----------------開(kāi)始寫入-------------------')
  wb=openpyxl.load_workbook(expath)
  sheet=wb.active
  c=open(outPutFile,'r',encoding='utf-8')
  i=1
  for line in c.readlines():
    linelist=line.split()
    ip=linelist[0]
    port=linelist[1]
    name=linelist[2]
    status=linelist[3]
    for j in range(4):
      if j==3:
        n=linelist[j]
        n=n.rsplit()
        n=n[0]
        sheet.cell(row=i, column=j + 1, value=n)
      else:
        sheet.cell(row=i,column=j+1,value=linelist[j])
    i=i+1
  c.close()
  wb.save(expath)
  print('----------------寫入完成-------------------')


if __name__ == '__main__':

  print('----------------掃描開(kāi)始-------------------')
  lock=multiprocessing.Manager().Lock()

  start=time.time()
  pool = ThreadPool(30)

  infolist=readfile(inputFile,lock)
  pool.map(scan,infolist)
  pool.close()
  pool.join()
  finish=time.time()
  print('----------------掃描完成-------------------')
  t=finish-start
  print('用時(shí) %f'%t)
  out = open(outPutFile, 'a+', encoding='utf-8')
  out.write('\n用時(shí) %f'%t)

  # makeEx()
  # info={'hostname':'135.233.115.55','port':'22,23,21,80,3389,5901,5902','arg':'-Pn -sV -T4'}

以上這篇python3 批量獲取對(duì)應(yīng)端口服務(wù)的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • pycharm 使用心得(四)顯示行號(hào)

    pycharm 使用心得(四)顯示行號(hào)

    這篇文章主要介紹了pycharm顯示行號(hào)的方法,需要的朋友可以參考下
    2014-06-06
  • python向xls寫入數(shù)據(jù)(包括合并,邊框,對(duì)齊,列寬)

    python向xls寫入數(shù)據(jù)(包括合并,邊框,對(duì)齊,列寬)

    這篇文章主要介紹了python向xls寫入數(shù)據(jù)(包括合并,邊框,對(duì)齊,列寬),幫助大家更好的利用python處理表格,感興趣的朋友可以了解下
    2021-02-02
  • Python異常處理之常見(jiàn)異常類型絕佳實(shí)踐詳解

    Python異常處理之常見(jiàn)異常類型絕佳實(shí)踐詳解

    這篇文章主要為大家介紹了Python異常處理之常見(jiàn)異常類型絕佳實(shí)踐詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Python實(shí)現(xiàn)歷史記錄功能(實(shí)際案例)

    Python實(shí)現(xiàn)歷史記錄功能(實(shí)際案例)

    很多應(yīng)用程序都有瀏覽用戶的歷史記錄的功能,瀏覽器可以查看最近訪問(wèn)過(guò)的網(wǎng)頁(yè),現(xiàn)在我們制作了一個(gè)簡(jiǎn)單的猜數(shù)字的小游戲,添加歷史記錄功能,顯示用戶最近猜過(guò)的數(shù)字,如何實(shí)現(xiàn)呢?跟隨小編一起看看吧
    2022-04-04
  • Python繪制正余弦函數(shù)圖像的方法

    Python繪制正余弦函數(shù)圖像的方法

    這篇文章主要介紹了Python繪制正余弦函數(shù)圖像的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • Django添加sitemap的方法示例

    Django添加sitemap的方法示例

    這篇文章主要介紹了Django添加sitemap的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • 解決Python spyder顯示不全df列和行的問(wèn)題

    解決Python spyder顯示不全df列和行的問(wèn)題

    這篇文章主要介紹了解決Python spyder顯示不全df列和行的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • python中pip無(wú)法正確安裝或路徑出錯(cuò)的解決方案

    python中pip無(wú)法正確安裝或路徑出錯(cuò)的解決方案

    這篇文章主要介紹了python中pip無(wú)法正確安裝或路徑出錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼

    Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼

    這篇文章主要介紹了Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Python json讀寫方式和字典相互轉(zhuǎn)化

    Python json讀寫方式和字典相互轉(zhuǎn)化

    這篇文章主要介紹了Python json讀寫方式和字典相互轉(zhuǎn)化,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04

最新評(píng)論