用Python让多人“共享”扫描仪
2021-01-11谢作如谢集
中国信息技术教育 2021年1期
谢作如 谢集



扫描仪是办公室中最常见的设备之一。虽然智能手机上配置的摄像头像素越来越高,人们习惯于用“随手一拍”来替代过去的“扫描”动作,但毕竟拍摄的效果不好,得到的图片往往不够平整。笔者学校创客空间中有一台爱普生扫描仪,虽然平时用处不大,但关键时刻总需要它的帮忙。为了方便使用,我们希望将其设置为网络共享,随时随处可以使用,最大限度地提升其利用率。
2020年3月,我们曾经利用虚谷号和Python将家里的惠普一体机(型号为“M126a”)改造为网络版的一体机,使其支持远程打印、远程扫描等功能。但是很遗憾,我们暂时找不到这台爱普生扫描仪在arm64系统下的驱动程序,只能将其安装在X86架构下的拿铁熊猫上,经过一番折腾,总算实现了多人共享,普通扫描仪变身为网络扫描仪(如图1)。
● 思路分析
因为之前已经成功地在一体机上实现网络扫描的功能,我们再次选择这样的做法,即利用Python写一个Web服务器,通过访问网页来操作扫描仪,具体方法如下:
用Python的Flask框架写一个Web服务器,运行在连接扫描仪的迷你电脑上。用户通过网页发送扫描命令,Python将调用系统的命令驱动扫描仪,得到图片后再借助格式转换工具转化为JPEG格式,最后通过网页显示图片,提示用户下载。这一过程描述起来有点复杂,但执行速度其实很快,而且对用户来说过程“透明”:点击网页的“扫描”按钮,一会儿就能得到图片,是很好的体验。基于Web的扫描仪应用系统的运行流程如图2所示。……
登录APP查看全文
