Python共享名称打印机

时间:2012-10-12 07:26:04

标签: python share zebra-printers

我在Linux下开发了一个Python脚本(2.6)。

我从网络中的Windows机器运行此脚本。

我将通过USB连接的打印机共享到Windows计算机。

我希望通过我的脚本检索打印机的共享名称。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

注意:此解决方案假设您在Linux机器上运行CUPS服务器,并且 Python 上也提供了pycups包环境( Debian / Ubuntu apt-get install python-cups Red Hat / Fedora / CentOS yum install python-cups,或者从source安装:更复杂因为它取决于成功编译的libcups开发文件可用性。)。

将远程 Windows 打印机添加到 Linux CUPS 服务器。这将使打印机在 Linux 上运行的 Python 脚本可在本地访问。

然后使用pycups包与打印机(documentation)进行交互。例如,列出安装在本地 CUPS 服务器中的打印机,并将文件打印到其中一个已安装的打印机:

import cups

conn = cups.Connection ()

# get printers available in the local CUPS server
printers = conn.getPrinters ()
for printer in printers:
    print printer, printers[printer]["device-uri"]

# get the first key from the printers dictionary as a sample printer name
printer_name = printers.keys()[0]
conn.printFile(printer_name, 'test_file_name.raw', 'job title', {})