Через win32print делаю так:
printer_list_name = [data[2].decode(codepage) for data in win32print.EnumPrinters(win32print.PRINTER_ENUM_LOCAL)] printer_list_name.extend([data[2].decode(codepage) for data in win32print.EnumPrinters(win32print.PRINTER_ENUM_CONNECTIONS)])