我的热感打印机出了问题,我不能打印,但还能用。我正在使用esc-pos python模块https://pythonhosted.org/python-printer-escpos/modules/escpos.html
这是我的密码
from escpos.connections import getUSBPrinter
printer = getUSBPrinter()(idVendor=0x0fe6, idProduct=0x811e, interface=98)
printer.text("Hello World")
printer.lf()这是我遇到的错误。
"/usr/local/lib/python3.7/dist-packages/escpos/connections.py",跟踪(最近一次调用):
"/home/pi/try thermal.py",第4行,在打印机= getUSBPrinter()(idVendor=0x0fe6,idProduct=0x811e,interface=98)文件的第87行,在init self.open()文件的第106行,在"/usr/local/lib/python3.7/dist-packages/usb/core.py",if self._device.is_kernel_driver_active(0):__open self._device.is_kernel_driver_active 1061中,在is_kernel_driver_active self._ctx.managed_open() File self._device.is_kernel_driver_active第102行中,包装器返回f(self,*args,**kwargs)文件"/usr/local/lib/python3.7/dist-packages/usb/core.py",第120行,managed_open self.handle = self.backend.open_device(self.dev)文件"/usr/local/lib/python3.7/dist-packages/usb/backend/libusb1.py",行786,open_device返回_DeviceHandle(dev)文件"/usr/local/lib/python3.7/dist-packages/usb/backend/libusb1.py",行643,在__init _check(_lib.libusb_open(self.devid,byref(self.handle))文件的第595行中,在_check ret(_strerror(Ret),ret,_libusb_errnoret) usb.core.USBError中: Errno 13访问被拒绝(权限不足)
我用的热打印机是,https://www.dfrobot.com/product-1799.html https://www.adafruit.com/product/2751
我希望你们能帮我,我非常需要这篇论文,我只是刚开始学树莓-pi。
发布于 2019-12-23 08:31:03
您的Linux用户无法访问USB设备,因此您需要创建一个udev规则来授予访问权限。
创建一个具有以下内容的文件printer.rules:
SUBSYSTEM=="usb", ATTRS{idVendor}=="0fe6", ATTRS{idProduct}=="811e", MODE="0666"并通过sudo将其复制到规则目录中。
sudo cp printer.rules /etc/udev/rules.d然后重新加载udev规则:
udevadm control --reload-rules && udevadm trigger现在,每个用户都应该可以访问打印机。
https://stackoverflow.com/questions/59450308
复制相似问题