抓取prn数据,我们需要进行如下步骤:
1.进入控制面板,找到需要测试的打印机
2.点击打印机属性,将打印机端口设置为127.0.0.1
3.打开终端,cd进入py脚本所在路径,运行脚本,prn文件即可生成到此路径下。
具体代码:
from socket import *
import timeHOST = ''
PORT = 9100
BUFSIZ = 1024
ADDR = (HOST,PORT)
tcpSerSock = socket(AF_INET, SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(5)while True:
print('waiting for connection …')
try:
tcpCliSock, addr = tcpSerSock.accept()
print('… connected from: ',addr)
t = time.strftime('%Y%m%d%H%M%S', time.localtime())
prn_file = open('prn_' + t + '.prn', 'wb+')
while True:
data = tcpCliSock.recv(BUFSIZ)
if not data:
break
prn_file.write(data)
print('write to ' + prn_file.name)
prn_file.close()
tcpCliSock.close()
except KeyboardInterrupt:
tcpSerSock.close()
exit(-1)tcpSerSock.close()
抓取的prn部分数据展示如下: