Enviando coisas para uma impressora em Python! / usr / bin / python

Ao lidar com seus próprios sistemas de computador como parte da infraestrutura de tecnologia da sua empresa, pode ser necessário executar tarefas de programação de baixo nível. Isso pode incluir trabalhar com hardware, como impressoras, por meio de ambientes de programação como Python. Dependendo do tipo de sistema que você usa, os comandos necessários para enviar texto ou arquivos para a impressora podem variar. Para Windows, você pode usar o módulo Win32 do Python. Para sistemas Linux/Mac, você pode enviar comandos diretamente para o sistema por meio do módulo "os" integrado ao Python.

Windows

1

Baixe e instale o módulo Python win32, que inclui o recurso de impressão win32.

2

Abra um editor de texto e crie um arquivo chamado "winprint.py".

3

Insira o seguinte código para iniciar o script Python, que importa as bibliotecas de impressão e cria um objeto de impressão:

import os, sys import win32print

p = win32print.OpenPrinter (printer_name)

Observe que "printer_name" é simplesmente um substituto para o nome da impressora real em seu sistema e que deve ser especificado.

4

Insira o seguinte código na próxima linha para abrir um trabalho de impressão e enviar texto para a impressora, onde "dados para imprimir" representa o texto bruto para enviar para a impressora:

job = win32print.StartDocPrinter (p, 1, ("teste de dados brutos", Nenhum, "RAW")) win32print.StartPagePrinter (p) win32print.WritePrinter (p, "dados para imprimir") win32print.EndPagePrinter (p)

Linux e Mac

1

Abra um editor de texto e crie um arquivo chamado "linuxprint.py".

2

Insira o seguinte código no editor de texto para iniciar o arquivo e importar o módulo "os", que permite a interação com o sistema operacional:

! / usr / bin / python

importar os

3

Insira o código a seguir na próxima linha para executar um comando que envia um arquivo de texto para a impressora. Isso requer que você salve o texto em um arquivo antes de imprimir:

os.system ("lpr -P printer_name file_name.txt")

Observe que "printer_name" representa o nome da impressora que você usa em seu sistema e pode variar. "file_name.txt" é o nome do arquivo de texto usado para impressão e também pode variar.