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 相关文章推荐
qpython3 读取安卓lastpass Cookies
Jun 19 Python
python opencv判断图像是否为空的实例
Jan 26 Python
Python利用matplotlib做图中图及次坐标轴的实例
Jul 08 Python
Python generator生成器和yield表达式详解
Aug 08 Python
python web框架Flask实现图形验证码及验证码的动态刷新实例
Oct 14 Python
Python安装tar.gz格式文件方法详解
Jan 19 Python
python实现梯度下降算法的实例详解
Aug 17 Python
python用tkinter实现一个gui的翻译工具
Oct 26 Python
python opencv通过4坐标剪裁图片
Jun 05 Python
如何在python中实现ECDSA你知道吗
Nov 23 Python
基于Python实现对比Exce的工具
Apr 07 Python
Python万能模板案例之matplotlib绘制甘特图
Apr 13 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
php 向访客和爬虫显示不同的内容
2009/11/09 PHP
php中{}大括号是什么意思
2013/12/01 PHP
PHP移动文件指针ftell()、fseek()、rewind()函数总结
2014/11/18 PHP
php curl 获取https请求的2种方法
2015/04/27 PHP
PHP简单判断字符串是否包含另一个字符串的方法
2016/03/25 PHP
PHP实现二维数组按照指定的字段进行排序算法示例
2019/04/23 PHP
laravel5.6 框架操作数据 Eloquent ORM用法示例
2020/01/26 PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
2020/02/27 PHP
国外大牛IE版本检测!现在IE都到9了,IE检测代码
2012/01/04 Javascript
jQuery之按钮组件的深入解析
2013/06/19 Javascript
js 异步操作回调函数如何控制执行顺序
2013/12/24 Javascript
javascript处理表单示例(javascript提交表单)
2014/04/28 Javascript
NodeJS学习笔记之Connect中间件模块(二)
2015/01/27 NodeJs
拥有一个属于自己的javascript表单验证插件
2016/03/24 Javascript
jQuery简单实现中间浮窗效果
2016/09/04 Javascript
老生常谈jquery中detach()和remove()的区别
2017/03/02 Javascript
Angular入口组件(entry component)与声明式组件的区别详解
2018/04/09 Javascript
react实现点击选中的li高亮的示例代码
2018/05/24 Javascript
Vue弹出菜单功能的实现代码
2018/09/12 Javascript
微信小程序中如何计算距离某个节日还有多少天
2019/07/15 Javascript
[05:39]2014DOTA2国际邀请赛 DK晋级胜者组专访战队国士无双
2014/07/14 DOTA
[48:05]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 VGJ.T vs VP
2018/03/31 DOTA
python 3.6.4 安装配置方法图文教程
2018/09/18 Python
浅析Python四种数据类型
2018/09/26 Python
在pytorch中实现只让指定变量向后传播梯度
2020/02/29 Python
Html5上传图片 移动端、PC端通用代码
2016/06/08 HTML / CSS
使用Canvas操作像素的方法
2018/06/14 HTML / CSS
HTML5中的音频和视频媒体播放元素小结
2016/01/29 HTML / CSS
HTML5微信播放全屏问题的解决方法
2017/03/09 HTML / CSS
伦敦一家西班牙童装精品店:La Coqueta
2018/02/02 全球购物
碧欧泉法国官网:Biotherm法国
2019/10/23 全球购物
C语言开发工程师测试题
2016/12/20 面试题
前台文员我鉴定
2014/01/12 职场文书
教师绩效考核方案
2014/01/21 职场文书
演讲开场白和结束语
2015/05/29 职场文书
Anaconda安装pytorch和paddle的方法步骤
2022/04/03 Python