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

python實現(xiàn)掃描局域網指定網段ip的方法

 更新時間:2019年04月16日 10:47:42   作者:水似冰  
這篇文章主要介紹了python實現(xiàn)掃描局域網指定網段ip的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下

一、問題由來

工作的局域網中,會接入很多設備,機器人上的網絡設備就2個了,一個巨哥紅外,一個海康可見光。機器人還有自身的ip。

有時候機器人掛的多了,設備維修更換中,搞來搞去就不記得ip是什么,用自帶的軟件的確能掃出來,但是這就要開兩個windows環(huán)境下的軟件,耗時耗力,折騰。正好在linux,那簡單,敲命令。

nmap -P 192.168.1.0/24

可以掃描出 192.168.1.0~192.168.1.255的全部ip

但是前提是要裝過nmap

apt-get install nmap

可總感覺在用高射炮打蚊子——大材小用

那就自己折騰折騰python吧,于是就在網上抄抄改改。

二、python掃描指定網段ip

1、demo

pingS.py
import sys
import os
import time
import _thread
import datetime
def get_os():
  os = platform.system()
  if os == "Windows":
    return "n"
  else:
    return "c"
def ping_ip(ip_str):
  cmd = ["ping", "-{op}".format(op=get_os()),
      "1", ip_str]
  output = os.popen(" ".join(cmd)).readlines()
  flag = False
  for line in list(output):
    if not line:
      continue
    if str(line).upper().find("TTL") >=0:
      flag = True
      break
  if flag:
    print("*** *** *** ip: %s is OK *** *** ***"%(ip_str))
def find_ip(ip_prefix):
  for i in range(1,256):
    ip = ('%s.%s'%(ip_prefix,i))
    _thread.start_new_thread(ping_ip, (ip,))
    time.sleep(0.3)
if __name__ == "__main__":
  startTime = datetime.datetime.now()
  print("start time %s"%(time.ctime()))
  net=sys.argv[1]
  args = "".join(("192.168."+net+".1"))
  ip_prefix = '.'.join(args.split('.')[:-1])
  find_ip(ip_prefix)
  endTime = datetime.datetime.now()
  print("end time %s"%(time.ctime()))
  print("total takes :",(endTime - startTime).seconds)

python3除移thread模塊,為了兼容性使用_thread代替,最安全用法是使用threading模塊

datetime.datetime.now()獲取當前時間

os = platform.system()判斷當前系統(tǒng)類型

output = os.popen()調用終端,返回值會保存在output中

每次掃描的時長大約是 76 s。

2、運行

python3 pingS.py 1

參數1是指定網段,如果想掃描192.168.5.0~192.168.5.255

則輸入:

python3 pingS.py 5

3、打包

pyinstaller -F pingS.py打包成單一可執(zhí)行文件

用上面的命令前提是已安裝pyinstaller——-(pip intsall pyinstaller)

運行完會生成一個pingS的可執(zhí)行文件

cp pingS /bin

好了,到這一步,任意地方打開終端輸入:

pingS 1

都可以完成 192.168.1.0~192.168.1.255的掃描

總結

以上所述是小編給大家介紹的python實現(xiàn)掃描局域網指定網段ip的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

相關文章

  • Pygame淺析動畫精靈和碰撞檢測實現(xiàn)方法

    Pygame淺析動畫精靈和碰撞檢測實現(xiàn)方法

    這篇文章主要介紹了利用pygame完成動畫精靈和碰撞檢測,代碼詳細,內容豐富,對于想要學習pygame的朋友來講是一個不錯的練習,需要的朋友可以參考下
    2023-01-01
  • python中altair可視化庫實例用法

    python中altair可視化庫實例用法

    在本篇文章里小編給大家整理的是一篇關于python中altair可視化庫實例用法,對此有興趣的朋友們可以學習下。
    2021-01-01
  • 解決PyCharm不運行腳本,而是運行單元測試的問題

    解決PyCharm不運行腳本,而是運行單元測試的問題

    今天小編就為大家分享一篇解決PyCharm不運行腳本,而是運行單元測試的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • django model object序列化實例

    django model object序列化實例

    這篇文章主要介紹了django model object序列化實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 利用Python中的mock庫對Python代碼進行模擬測試

    利用Python中的mock庫對Python代碼進行模擬測試

    這篇文章主要介紹了利用Python中的mock庫對Python代碼進行模擬測試,mock庫自從Python3.3依賴成為了Python的內置庫,本文也等于介紹了該庫的用法,需要的朋友可以參考下
    2015-04-04
  • python爬蟲模塊URL管理器模塊用法解析

    python爬蟲模塊URL管理器模塊用法解析

    這篇文章主要介紹了python爬蟲模塊URL管理器模塊用法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • 利用Python為iOS10生成圖標和截屏

    利用Python為iOS10生成圖標和截屏

    這篇文章主要為大家詳細介紹了利用Python為iOS10生成圖標和截屏的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 對python中兩種列表元素去重函數性能的比較方法

    對python中兩種列表元素去重函數性能的比較方法

    今天小編就為大家分享一篇對python中兩種列表元素去重函數性能的比較方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • pandas的排序和排名的具體使用

    pandas的排序和排名的具體使用

    這篇文章主要介紹了pandas的排序和排名的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-07-07
  • Python爬蟲小技巧之偽造隨機的User-Agent

    Python爬蟲小技巧之偽造隨機的User-Agent

    這篇文章主要給大家介紹了關于Python爬蟲小技巧之偽造隨機的User-Agent的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-09-09

最新評論

洛阳市| 永顺县| 武宁县| 鲜城| 茶陵县| 威远县| 新闻| 宿州市| 永城市| 三门峡市| 固安县| 廉江市| 乐昌市| 西平县| 萝北县| 康保县| 汾西县| 手游| 化德县| 永宁县| 南投市| 垫江县| 永修县| 鹿泉市| 工布江达县| 大悟县| 云梦县| 库尔勒市| 台州市| 东乡族自治县| 太仆寺旗| 华亭县| 石狮市| 潼关县| 抚远县| 江口县| 大同县| 新安县| 比如县| 伊川县| 罗平县|