首页 > 其他分享 >佳能打印机统计打印量

佳能打印机统计打印量

时间:2024-09-14 15:26:03浏览次数:11  
标签:打印机 oid 佳能 color ip 打印 192 black sn

需求


IT同学每个季度需要统计集团所有打印机的打印量,提供给供应商,根据打印量计算费用。 其中:

  • 黑白打印机 只需统计总打印量1个数据。
  • 彩色打印机 分为彩色大纸张、彩色小纸张、黑白大纸张、黑白小纸张,需要统计这4个数据。

集团打印机数十台,人工统计耗时长、效率低,因此写个脚本进行统计。

思路


通过Fping判断打印机IP地址存活性,对在线的打印机进行数据统计,非在线的记录下SN和IP地址,写到csv文件。

环境准备


  • 安装Fping
wget https://fping.org/dist/fping-5.2.tar.gz
tar zxvf  fping-5.2.tar.gz
sudo ./configure
sudo make 
sudo make install

默认安装路径:/user/local/sbin/

脚本实现


import csv
import os
from datetime import datetime

date = datetime.now().date()

#需要的oid
sn_oid = '.1.3.6.1.4.1.1602.1.2.1.4.0'
name_oid = 'SNMPv2-MIB::sysDescr.0'
count_pri_oid = 'mib-2.43.10.2.1.4.1.1'
color_big_oid = '.1.3.6.1.4.1.1602.1.11.1.3.1.4.122'
color_small_oid = '.1.3.6.1.4.1.1602.1.11.1.3.1.4.123'
black_big_oid = '.1.3.6.1.4.1.1602.1.11.1.3.1.4.112'
black_small_oid = '.1.3.6.1.4.1.1602.1.11.1.3.1.4.113'

#黑白打印机
iplist = ['192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x',
          '192.x.x.x']
#彩色打印机
iplist_color = ['192.x.x.x',
                '192.x.x.x',
                '192.x.x.x',
                '192.x.x.x',
                '192.x.x.x',
                '192.x.x.x',
                '192.x.x.x']

header = ("序列号", "打印量", "彩色大", "彩色小", "黑白大", "黑白小", "IP地址")
data = []

for ip in iplist:
    res = os.system("/usr/local/sbin/fping %s -a" %ip)
    if res == 0:
        sn_data = os.popen("snmpwalk -v 1 -c public %s %s" %(ip,sn_oid))
        count_pri_data = os.popen("snmpwalk -v 1 -c public %s %s" %(ip,count_pri_oid))
        sn = sn_data.read().split('"')[1]
        count_pri = count_pri_data.read().split("Counter32:")[-1]
        data.append((sn, count_pri, "", "", "", "",ip))
    else:
        data.append((sn, "", "", "", "", "", ip))

for ip in iplist_color:
    res = os.system("/usr/local/sbin/fping %s -a" %ip)
    if res == 0:
        sn_data = os.popen("snmpwalk -v 1 -c public %s %s" %(ip,sn_oid))
        color_big = os.popen("snmpwalk -v 1 -c public %s %s" %(ip,color_big_oid))
        color_small = os.popen("snmpwalk -v 1 -c public %s %s" %(ip,color_small_oid))
        black_big = os.popen("snmpwalk -v 1 -c public %s %s" %(ip,black_big_oid))
        black_small = os.popen("snmpwalk -v 1 -c public %s %s" % (ip, black_small_oid))
        sn = sn_data.read().split('"')[1]
        color_big = color_big.read().split("Counter32:")[-1]
        color_small = color_small.read().split("Counter32:")[-1]
        black_big = black_big.read().split("Counter32:")[-1]
        black_small = black_small.read().split("Counter32:")[-1]
        data.append((sn, "", color_big, color_small, black_big, black_small, ip))
    else:
        data.append((sn, "", "", "", "", "", ip))


with open("/Users/zhenning/Desktop/print-%s.csv" %date, "w", encoding="GBK", newline="") as f:
     file = csv.writer(f)
     file.writerow(header)
     for row in data:
         file.writerow(row)
  • 效果展示

image.png image.png

标签:打印机,oid,佳能,color,ip,打印,192,black,sn
From: https://blog.51cto.com/magic3/12017106

相关文章

  • 北京2024年下半年软考准考证打印时间11月5日开始
    根据2024下半年北京软考考务通知的说明,2024下半年北京软考准考证打印相关事项如下:一、2024下半年北京软考准考证打印时间2024年11月5日至11月8日。二、2024下半年北京软考准考证打印入口网址考生登录中国计算机技术职业资格网网上报名系统(http://www.ruankao.org.cn/),点击链接进入......
  • 共享打印机报“0x00000709和0x0000011b”错误原因分析及终极解决方法
           在日常办公和生活中,打印机是不可或缺的重要设备。然而,有时在连接打印机的过程中,我们可能会遇到错误代码0x00000709和0x0000011b的提示。有更新补丁导致的、有访问共享打印机服务异常、有访问共享打印机驱动异常等问题导致的,针对访问共享打印机0x00000709和0x0......
  • 广东深圳2024年下半年软考准考证打印时间11月5日开始
    根据深圳人事考试网发布的《关于2024年度计算机技术与软件专业技术资格(水平)考试有关事项的通知》,广东深圳2024年下半年软考准考证打印时间为2024年11月5日9:00至8日17:00。报名成功的人员应按时下载并打印纸质准考证,逾期视为放弃考试。考生须携带准考证、有效期内的居民身份证(或社......
  • 桌面运维工具之打印机驱动安装
    1.前言桌面运维同学经常会处理打印机驱动安装这类工单,手动安装打印机驱动通常包含以下步骤:1.根据打印机型号网上查找对应打印机驱动2.使用cmd命令进入管理员界面3.将打印机驱动添加到window系统中人工安装需要经过三个步骤,操作繁琐,效率较低。基于此,我们想开发一个自动化安装......
  • 揭秘Python:对象类型打印
    一、Python数据类型简介在Python的世界中,了解你正在处理的数据类型是至关重要的。Python提供了多种内置数据类型,包括数字(整数和浮点数)、字符串、列表、元组、字典等。这些数据类型决定了你可以对数据执行哪些操作,以及如何高效地存储和处理数据。1.数字类型数字类型是最基本的数据......
  • 局域网共享打印机问题集
    下方统一说明:直接连接打印机电脑——>A主机需要连接打印机电脑——>B主机1、A主机为32位系统,B主机为64位系统,B主机连接时一直提示windows更新,找不到驱动的情况解决:A主机上找到打印机共享页面,选择其他驱动程序,将64位驱动勾选上,找到对应打印机相应64位驱动程序下载,安装好,B主机重新正......
  • 实时监控windows服务端口连接并打印到一个文件上
    话不多说,直接上脚本,test.bat 文件,目录生成netstat_log.txt,文件里面直接时间和netstat 信息都打印在那了@echooffset"logfile=netstat_log.txt":loop  echo%date%%time%>>%logfile%  echo.>>%logfile%  netstat-ano>>%logfile%  echo.>>%lo......
  • 河南省12123公安厅临牌打印如何下载打印控件
    公安交通管理综合应用平台打印控件安装失败,河南省公安厅临牌打印如何下载打印控件,12123临牌系统怎么安装打印控件?   关于“12123河南省公安厅临牌打印如何下载打印控件怎么安装打印控件”的问题,实际上,交管12123APP主要用于在线申请临时号牌、查询车辆信息、处理交通违......
  • vue打印模版模块,使用vue-plugin-hiprint插件搭建过程
    文章目录概要安装插件引入全局样式引入字体图标库完整demo解析-保存模版解析-左侧的自定义组件解析-视图容器解析-打印文件地址概要项目中,我们可能需要实现打印的需求功能,而打印时,用户可以先去编辑打印模版,这样再其他模版,只需要提供数据,就可以使用模......
  • fmt.Printf 函数用于格式化并打印信息到标准输出
    在Go语言中,fmt.Printf函数用于格式化并打印信息到标准输出。%c和%d是格式化参数中的占位符,用于指定输出的格式。以下是一些常用的格式化参数:%v:默认格式,根据变量的类型自动选择输出格式。%+v:类似 %v,但会输出字段名。%#v:类似 %v,但会输出Go语法表示。%T:输出变量的类型......