Python获取指定网段正在使用的IP


Posted in Python onDecember 14, 2020
#!/usr/bin/env python
# -*- coding: utf-8 -*-


''''' 
使用方法样例 python test20.py 192.168.1.1 
(会扫描192.168.1.1-255的ip) 
多线程加速后大概十几秒
'''
import platform
import sys
import os
import time
import threading

live_ip = 0


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()
  for line in output:
    if str(line).upper().find("TTL") >= 0:
      print("ip: %s is ok ***" % ip_str)
      global live_ip
      live_ip += 1
      break


def find_ip(ip_prefix):
  '''''
  给出当前的127.0.0 ,然后扫描整个段所有地址
  '''
  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('本次扫描共检测到本网络存在%s台设备' % live_ip)

Python获取指定网段正在使用的IP

以上就是Python获取指定网段正在使用的IP的详细内容,更多关于python 获取网段ip的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python Tkinter简单布局实例教程
Sep 03 Python
python使用cStringIO实现临时内存文件访问的方法
Mar 26 Python
python中OrderedDict的使用方法详解
May 05 Python
python图书管理系统
Apr 05 Python
使用pandas对矢量化数据进行替换处理的方法
Apr 11 Python
Python 中包/模块的 `import` 操作代码
Apr 22 Python
Django框架会话技术实例分析【Cookie与Session】
May 24 Python
python绘制双Y轴折线图以及单Y轴双变量柱状图的实例
Jul 08 Python
基于python中__add__函数的用法
Nov 25 Python
Python 使用 environs 库定义环境变量的方法
Feb 25 Python
Python 批量读取文件中指定字符的实现
Mar 06 Python
Manjaro、pip、conda更换国内源的方法
Nov 17 Python
python利用pytesseract 实现本地识别图片文字
Dec 14 #Python
python 利用百度API识别图片文字(多线程版)
Dec 14 #Python
python3中for循环踩过的坑记录
Dec 14 #Python
Python 数据分析之逐块读取文本的实现
Dec 14 #Python
Python 2.6.6升级到Python2.7.15的详细步骤
Dec 14 #Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
Dec 14 #Python
Pandas中DataFrame交换列顺序的方法实现
Dec 14 #Python
You might like
第十二节--类的自动加载
2006/11/16 PHP
删除及到期域名的查看(抢域名必备哦)
2008/05/14 PHP
Codeigniter注册登录代码示例
2014/06/12 PHP
phpStudy2016 配置多个域名期间遇到的问题小结
2017/10/19 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
2019/03/18 PHP
firefox和IE系列的相关区别整理 以备后用
2009/12/28 Javascript
flexigrid 类似ext grid的JS表格代码
2010/07/17 Javascript
javascript学习之闭包分析
2010/12/02 Javascript
JavaScript NodeTree导航栏(菜单项JSON类型/自制)
2013/02/01 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
浅谈javascript 函数属性和方法
2015/01/21 Javascript
JavaScript之AOP编程实例
2015/07/17 Javascript
理解javascript中DOM事件
2015/12/25 Javascript
JS组件Bootstrap ContextMenu右键菜单使用方法
2016/04/17 Javascript
JavaScript数组方法总结分析
2016/05/06 Javascript
基于Bootstrap框架实现图片切换
2017/03/10 Javascript
Vue.js 插件开发详解
2017/03/29 Javascript
BootStrap模态框不垂直居中的解决方法
2017/10/19 Javascript
详解基于Node.js的HTTP/2 Server实践
2018/05/31 Javascript
Vue中控制v-for循环次数的实现方法
2018/09/26 Javascript
微信小程序实现九宫格抽奖
2020/04/15 Javascript
vue 判断两个时间插件结束时间必选大于开始时间的代码
2020/11/04 Javascript
python字符串连接方式汇总
2014/08/21 Python
Python同步遍历多个列表的示例
2019/02/19 Python
python自动脚本的pyautogui入门学习
2020/04/01 Python
Python求凸包及多边形面积教程
2020/04/12 Python
Python根据指定文件生成XML的方法
2020/06/29 Python
Python中BeautifulSoup通过查找Id获取元素信息
2020/12/07 Python
Python Selenium库的基本使用教程
2021/01/04 Python
SQL SERVER面试资料
2013/03/30 面试题
讲座主持词
2014/03/20 职场文书
中班幼儿评语大全
2014/04/30 职场文书
《微笑着面对生活》优秀演讲稿范文
2014/09/23 职场文书
群众路线剖析材料范文
2014/10/09 职场文书
redis实现的四种常见限流策略
2021/06/18 Redis
详解MySQL的内连接和外连接
2023/05/08 MySQL