python通过snmp协议获取远端主机网卡流量信息

#-*- coding:utf-8 -*-
import netsnmp
class SnmpClass(object):
    """
    SNMP
    """
    def __init__(self, oid="sysDescr", version=2, destHost="localhost", community="aaa"):
        self.oid = oid
        self.version = version
        self.destHost = destHost
        self.community = community

    @property
    def query(self):
        """
        snmpwalk
        """
        try:

            result = netsnmp.snmpwalk(self.oid,
                                      Version=self.version,
                                      DestHost=self.destHost,
                                      Community=self.community)
        except Exception, err:
            print err
            result = None
        return result


def getflow():
    x = SnmpClass(oid="ifInOctets", destHost="218.205.104.1")
    y = SnmpClass(oid="ifDescr", destHost="218.205.104.1")
    datakey = y.query
    datavaule = x.query
    data = {}
    for z in range(len(datakey)):
        data[datakey[z]] = datavaule[z]
    print data

getflow()

 community:为团体字

猜你喜欢

转载自www.cnblogs.com/Dev0ps/p/9298689.html