python-shell
python-shell copied to clipboard
Debugging parse error
Hey there!
I ran my python script from python it runs just fine. I tried running through python-shell with v2.7 and v3.6 of python and I get the same error. I read through your issues and it looks like I don't need to do anything special to import python libraries python-shell does all the heavy lifting. I'm at a loss for how to proceed.
Error
{ Error: 2017-08-10 15:08:54,666 pysmi: running pysmi version 0.1.3
2017-08-10 15:08:54,666 pysmi: debug category 'searcher' enabled
2017-08-10 15:08:54,666 pysmi: debug category 'reader' enabled
2017-08-10 15:08:54,666 pysmi: debug category 'compiler' enabled
2017-08-10 15:08:54,825 pysmi: current MIB source(s): FileReader{"/users/admin/desktop/mib/mibFiles"}, HttpReader{"http://mibs.snmplabs.com:80/asn1/"}
2017-08-10 15:08:54,825 pysmi: current compiled MIBs location(s): StubSearcher
2017-08-10 15:08:54,825 pysmi: current compiled MIBs location(s): StubSearcher, PyPackageSearcher{"/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pysnmp/smi/mibs"}, PyPackageSearcher{"/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pysnmp/smi/mibs/instances"}, PyPackageSearcher{"pysnmp_mibs"}
2017-08-10 15:08:54,825 pysmi: current MIB borrower(s):
at PythonShell.parseError (/Users/admin/Desktop/mib/node_modules/python-shell/index.js:190:17)
at terminateIfNeeded (/Users/admin/Desktop/mib/node_modules/python-shell/index.js:98:28)
at ChildProcess.<anonymous> (/Users/admin/Desktop/mib/node_modules/python-shell/index.js:88:9)
at emitTwo (events.js:125:13)
at ChildProcess.emit (events.js:213:7)
at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
executable: '/usr/local/bin/python3',
options: null,
script: 'test.py',
args: null,
exitCode: 0 }
results: undefined
Test.py
from pysnmp.smi import builder, view, compiler, error, instrum, exval
from pysmi import debug
debug.setLogger(debug.Debug('searcher', 'reader', 'compiler'))
# Create MIB loader/builder
mibBuilder = builder.MibBuilder()
arr = []
# Optionally attach PySMI MIB compiler (if installed)
print('Attaching MIB compiler...'),
compiler.addMibCompiler(mibBuilder, sources=['/users/admin/desktop/mib/mibFiles/', 'http://mibs.snmplabs.com/asn1/'], genTexts=True)
print('done')
# Optionally set an alternative path to compiled MIBs
print('Setting MIB sources...')
mibBuilder.addMibSources(builder.DirMibSource('/users/admin/desktop/mib/mibfiles/'))
print(mibBuilder.getMibSources())
print('done')
print('Loading MIB modules...'),
mibBuilder.loadModules('SNMPv2-MIB', 'SNMP-FRAMEWORK-MIB', 'SNMP-COMMUNITY-MIB', 'RS-COMMON-MIB', 'RS-XX9-SMI-MIB' , 'RS-XX9-TC-MIB', 'RS-XX9-COMMON-MIB')
# RS-XX9-ATSC-MIB', 'RS-XX9-ATV-MIB', 'RS-XX9-AIR-COOLING-MIB');
# mibBuilder.loadModules('SNMPv2-MIB', 'SNMP-FRAMEWORK-MIB', 'SNMP-COMMUNITY-MIB', 'RS-COMMON-MIB', 'RS-XX9-AIR-COOLING-MIB', 'RS-XX9-ATSC-MIB', 'RS-XX9-ATV-MIB', 'RS-XX9-COMMON-MIB', 'RS-XX9-DAB-MIB', 'RS-XX9-DTMB-MIB', 'RS-XX9-DVBT-MIB', 'RS-XX9-DVBT2-MIB', 'RS-XX9-FM-MIB', 'RS-XX9-ISDBT-MIB', 'RS-XX9-LIQUID-COOLING-MIB', 'RS-XX9-MTX-MIB', 'RS-XX9-SMI-MIB', 'RS-XX9-TC-MIB', 'RS-XX9-TX-MIB');
# RS-COMMON-MIB - mandatory for this MIB
# - RS-XX9-SMI-MIB - mandatory for this MIB
# - RS-XX9-TC-MIB - mandatory for this MIB
# - RS-XX9-COMMON-MIB
# print('done')
print('Indexing MIB objects...'),
mibView = view.MibViewController(mibBuilder)
print('done')
# print('MIB symbol name lookup by OID: '),
# oid, label, suffix = mibView.getNodeName((1, 3, 6, 1, 4, 1))
# print(oid, label, suffix)
# print('MIB symbol name lookup by label: '),
# oid, label, suffix = mibView.getNodeName((1, 3, 6, 1, 4, 1, 'mib-2', 1, 'sysDescr'))
# print(oid, label, suffix)
print('MIB symbol name lookup by symbol description: '),
oid, label, suffix = mibView.getNodeName(('sysDescr',))
oid, label, suffix = mibView.getNodeName(('snmpEngineID',), 'SNMP-FRAMEWORK-MIB')
print(oid, label, suffix)
print('MIB 1: '),
mibName, objName = 'SNMP-FRAMEWORK-MIB', 'snmpEngineID'
mibObj, = mibBuilder.importSymbols(mibName, objName)
print(mibObj.getDescription())
mibName, objName, restOfOid = mibView.getNodeLocation(oid)
mibObj, = mibBuilder.importSymbols(mibName, objName)
print(mibObj.getDescription())
print('MIB 2: '),
mibName, objName = 'SNMP-FRAMEWORK-MIB', 'snmpEngineID'
mibObj, = mibBuilder.importSymbols(mibName, objName)
print(mibObj.getDescription())
mibName, objName, restOfOid = mibView.getNodeLocation(oid)
mibObj, = mibBuilder.importSymbols(mibName, objName)
print(mibObj.getDescription())
print('MIB object value pretty print: '),
mibNode, = mibBuilder.importSymbols('SNMP-FRAMEWORK-MIB', 'snmpEngineID')
print(mibNode.syntax.prettyPrint())
print('MIB symbol location lookup by name: '),
modName, symName, suffix = mibView.getNodeLocation(('snmpCommunityEntry',))
print(symName, modName)
print('MIB node lookup by location: '),
rowNode, = mibBuilder.importSymbols(modName, symName)
print(rowNode)
print('Conceptual table index value to oid convertion: '),
oid = rowNode.getInstIdFromIndices('router')
print(oid)
print('Conceptual table index oid to value convertion: '),
print(rowNode.getIndicesFromInstId(oid))
print('MIB tree traversal')
oid, label, suffix = mibView.getFirstNodeName()
while 1:
try:
mibName, objName, mibName2 = 'SNMP-FRAMEWORK-MIB', 'snmpEngineID', 'RS-COMMON-MIB'
mibObj, = mibBuilder.importSymbols(mibName, objName)
# mibObj2, = mibBuilder.importSymbols(mibName2);
# print(mibBuilder['RS-COMMON-MIB'])
modName, nodeDesc, suffix = mibView.getNodeLocation(oid)
# mibObj, = mibBuilder.importSymbols(modName, nodeDesc)
# print(mibObj.getDescription())
print('%s::%s == %s' % (modName, nodeDesc, oid))
arr.append({modName: modName, nodeDesc: nodeDesc, oid: oid})
oid, label, suffix = mibView.getNextNodeName(oid)
except error.NoSuchObjectError:
break
print('Building MIB tree...'),
mibInstrum = instrum.MibInstrumController(mibBuilder)
print('done')
print('Building table entry index from human-friendly representation...'),
snmpCommunityEntry, = mibBuilder.importSymbols(
'SNMP-COMMUNITY-MIB', 'snmpCommunityEntry'
)
instanceId = snmpCommunityEntry.getInstIdFromIndices('my-router')
print('done')
# print('Create/update SNMP-COMMUNITY-MIB::snmpCommunityEntry table row: ')
# varBinds = mibInstrum.writeVars(
# ((snmpCommunityEntry.name + (2,) + instanceId, 'mycomm'),
# (snmpCommunityEntry.name + (3,) + instanceId, 'mynmsname'),
# (snmpCommunityEntry.name + (7,) + instanceId, 'volatile'))
# )
# for oid, val in varBinds:
# print('%s = %s' % ('.'.join([str(x) for x in oid]), val.prettyPrint()))
# print('done')
print('Read whole MIB (table walk)')
oid, val = (), None
while 1:
oid, val = mibInstrum.readNextVars(((oid, val),))[0]
if exval.endOfMib.isSameTypeWith(val):
break
print('%s = %s' % ('.'.join([str(x) for x in oid]), val.prettyPrint()))
print('done')
print('Unloading MIB modules...'),
mibBuilder.unloadModules()
print('done')
print (arr);
# print('Modules traversal')
# modName = mibView.getFirstModuleName()
# while 1:
# if modName: print(modName)
# try:
# modName = mibView.getNextModuleName(modName)
# except error.SmiError:
# break
I have the same issue. Did you fix it ? Thanks a lot