import sys
from samba import spoolss
if len(sys.argv) < 2 or len(sys.argv) > 3:
print "Usage: enumprinters.py <servername> [infolevel]"
sys.exit(1)
printserver = sys.argv[1]
level = 1
if len(sys.argv) == 3:
level = int(sys.argv[2])
try:
printer_list = spoolss.enumprinters("\\\\%s" % printserver)
except:
print "error enumerating printers on %s" % printserver
sys.exit(1)
for printer in printer_list:
h = spoolss.openprinter("\\\\%s\\%s" % (printserver, printer))
info = h.getprinter(level = level)
print "Printer info %d for %s: %s" % (level, printer, info)
print