项目终于上线了,虽然只是上了个平台。可是总比没上的要好是吧,毕竟也算是取得阶段性的胜利有木有。
因为一直要呆在银行,可是还要有论文要写,数据要跑,就想着用TeamViewer连接实验室电脑,毕竟实验室电脑性能比较给力。但是有一个不好的地方就是TeamViewer每次连接都需要密码,而我人又不在,因此就萌生了写个脚本的想法。
这个脚本的目的就是为了获取实验室TeamViewer上的密码,实现远程连接电脑的功能。怎么获取呢?自然是利用截屏外加发邮件啦~~~
有了思路,就好办了。首先,要保证TeamViewer程序能够运行,这个开机自启就能解决。其次,需要能够在桌面展示TeamViewer程序的运行界面(为了截图啊),最后就是将截图发送至邮箱了。
关于展示运行界面,可以使用模拟点击登陆,需要用的模块是pymouse和pykeyboard,在python3中这两个模块已经整合到PyUserInput模块内了,因此需要导入PyUserInput模块,具体的信息可以查看GitHub相关介绍:https://github.com/PyUserInput/PyUserInput.
你以为直接一个pip install PyUserInput就能搞定?图样图森破,安装之前还需要安装pywin32和pyHook,这俩是可以直接用pip进行安装的,但是,但是!我还是没有安装成功,只好去
https://www.lfd.uci.edu/~gohlke/pythonlibs/
下载离线安装包了,然后直接解压到python目录下的site-packages文件夹就好了(这种方法不推荐),如果可以还是建议使用pip install进行安装,当然,这期间自然免不了各种查资料,对了,我还遇到在安装pymouse过程中无法找到win32api的问题,这个是需要安装win32和pypiwin32就可以了。安装完成之后的列表如下图所示:
这个问题解决了下面就好办了,模拟鼠标双击TeamViewer图标,然后截图保存截图,最后发送图片到指定邮箱就好了
模拟鼠标点击
自动截屏,并按时间进行命名保存
这里不得不感叹,轮子造的好,社会摇到老,直接引入PIL模块,三行代码就实现截屏了,当然,要是截屏哪一块区域,直接引入对应参数即可
最后将截屏进行发送邮件就好了
以上代码仅仅是发送的文本,可是我需要的是截图,因此直接在内容中插入截图就好了
发送邮件整体代码如下:
运行成功截图是这样的:
邮件收到的是这样的:
美滋滋有木有~~~
最后,郑重感谢我的女朋友能够不厌其烦忍受我的发送邮件测试!!!等我回去带你去吃好吃的!!!
完整代码可移步:
https://github.com/JingLuo2017/Simulated-click-and-send-email
领取专属 10元无门槛券
私享最新 技术干货