Python獲取指定網(wǎng)段正在使用的IP
#!/usr/bin/env python# -*- coding: utf-8 -*-’’’’’ 使用方法樣例 python test20.py 192.168.1.1 (會(huì)掃描192.168.1.1-255的ip) 多線(xiàn)程加速后大概十幾秒’’’import platformimport sysimport osimport timeimport threadinglive_ip = 0def 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() for line in output: if str(line).upper().find('TTL') >= 0: print('ip: %s is ok ***' % ip_str) global live_ip live_ip += 1 breakdef find_ip(ip_prefix): ’’’’’ 給出當(dāng)前的127.0.0 ,然后掃描整個(gè)段所有地址 ’’’ threads = [] for i in range(1, 256): ip = ’%s.%s’ % (ip_prefix, i) threads.append(threading.Thread(target=ping_ip, args={ip, })) for i in threads: i.start() for i in threads: i.join()if __name__ == '__main__': print('start time %s' % time.ctime()) cmd_args = sys.argv[1:] args = ''.join(cmd_args) ip_pre = ’.’.join(args.split(’.’)[:-1]) find_ip(ip_pre) print('end time %s' % time.ctime()) print(’本次掃描共檢測(cè)到本網(wǎng)絡(luò)存在%s臺(tái)設(shè)備’ % live_ip)
以上就是Python獲取指定網(wǎng)段正在使用的IP的詳細(xì)內(nèi)容,更多關(guān)于python 獲取網(wǎng)段ip的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. Gitlab CI-CD自動(dòng)化部署SpringBoot項(xiàng)目的方法步驟2. Java封裝數(shù)組實(shí)現(xiàn)包含、搜索和刪除元素操作詳解3. Django:使用filter的pk進(jìn)行多值查詢(xún)操作4. JAVA上加密算法的實(shí)現(xiàn)用例5. 使用Python和百度語(yǔ)音識(shí)別生成視頻字幕的實(shí)現(xiàn)6. python基于socket模擬實(shí)現(xiàn)ssh遠(yuǎn)程執(zhí)行命令7. ASP刪除img標(biāo)簽的style屬性只保留src的正則函數(shù)8. idea打開(kāi)多個(gè)窗口的操作方法9. ASP中解決“對(duì)象關(guān)閉時(shí),不允許操作。”的詭異問(wèn)題……10. 淺談SpringMVC jsp前臺(tái)獲取參數(shù)的方式 EL表達(dá)式
