用Python打开直排打印机

用Python打开直排打印机,python,epson,network-printers,drawer,twistd,Python,Epson,Network Printers,Drawer,Twistd,我有爱普生TM-U220B网络打印机和现金抽屉。我正在开发Python Web应用程序,我设法在我的应用程序上配置打印机。我的打印机工作正常,我只想打开直到我打印车票。我在网上找到了一些打开抽屉的密码 代码如下: def print_(printer_name, file_path): preorder = chr(27)+chr(100)+chr(0) cut_paper = chr(29)+chr(86)+chr(66)+chr(0) open_till =

我有爱普生TM-U220B网络打印机和现金抽屉。我正在开发Python Web应用程序,我设法在我的应用程序上配置打印机。我的打印机工作正常,我只想打开直到我打印车票。我在网上找到了一些打开抽屉的密码

代码如下:

def print_(printer_name, file_path):
    preorder = chr(27)+chr(100)+chr(0)    
    cut_paper = chr(29)+chr(86)+chr(66)+chr(0)

    open_till = chr(27)+chr(112)+chr(10)

    the_file = open(file_path, "a")
    the_file.seek(0)
    the_file.write(preorder)
    the_file.seek(0,2)
    the_file.write(cut_paper)
    the_file.write(open_till)
    the_file.close()
    conn.printFile(printer_name, file_path, md5(file_path), {})
打开的代码是不工作,其他一切正常


谢谢

您可以使用以下代码打开现金抽屉

import win32print

def OpenCashDrawer(printerName) :   
       printerHandler = win32print.OpenPrinter(printerName)
       cashDraweOpenCommand = chr(27)+chr(112)+chr(0)+chr(25)+chr(250)
       win32print.StartDocPrinter(printerHandler, 1, ('Cash Drawer Open',None,'RAW')) 
       win32print.WritePrinter( printerHandler, cashDraweOpenCommand)
       win32print.EndDocPrinter(printerHandler)
       win32print.ClosePrinter(printerHandler)

OpenCashDrawer("YourPrinterName")

您可以使用以下代码打开现金抽屉

import win32print

def OpenCashDrawer(printerName) :   
       printerHandler = win32print.OpenPrinter(printerName)
       cashDraweOpenCommand = chr(27)+chr(112)+chr(0)+chr(25)+chr(250)
       win32print.StartDocPrinter(printerHandler, 1, ('Cash Drawer Open',None,'RAW')) 
       win32print.WritePrinter( printerHandler, cashDraweOpenCommand)
       win32print.EndDocPrinter(printerHandler)
       win32print.ClosePrinter(printerHandler)

OpenCashDrawer("YourPrinterName")

尝试“wb”模式而不是“a”,并将打印机配置为接受命令。当我为open_输入代码直到打印机完全不打印时,控制代码为
27112,0,25250
,请尝试“wb”模式而不是“a”,并将打印机配置为接受命令。当我输入open_的代码直到打印机完全不打印时,控制代码为
27112,0,25250