文章首发于我的技术博客:你可以在上面看到更多的Python教程和python爬虫

自动化截屏有什么用呢?为什么要实现自动化截屏呢?其实,在某些特殊的场景下,记录电脑使用者的操作还是很有必要的。比如,银行记录柜员日常操作当作日后规范流程的数据,或者是日后存证;再比如,作为家长记录孩子使用电脑的情况等。

1. 截屏功能的实现

Python有个第三方模块叫做PIL(Python 3中PIL停止开发,fork了一个新分支叫Pillow来支持Py3),是用来进行图像处理的,比如,改变图片颜色,进行图片缩放,图片裁剪等等基本图片操作。巧的是,它就包含一个截屏的功能,而且使用起来非常简单,两三行代码即可搞定:

from PIL import ImageGrab

im = ImageGrab.grab()

im.save('path-to-save','png')

不巧的是,它只支持Windows和Mac系统,Linux下面却不能用

2. 自动化不间断截屏

有了上面简洁的截屏功能,我们可以把它打包成一个简单的函数叫做make_shot(),每次截屏存储为当前时间命名的图片,一天24小时不间断截屏。

import time

def main():

while 1:

make_shot()

time.sleep(60) # 60秒截一次屏

# 这里可以把截屏信息存入数据库,方便日后统计

# 还可以增加一些图像处理算法,自动分析截屏

python windows自动化 爬虫_使用Python实现自动化截取Windows系统屏幕相关推荐

  1. python简单网络爬虫_【Python】简单的网络爬虫

    完整代码 # encoding:UTF-8 # from bs4 import BeautifulSoup import urlparse import urllib2 import re impor ...

  2. python网易云爬虫_使用python进行爬虫下载网易云音乐

    使用python进行爬虫(其实我最想知道的是怎么知道这个api地址的) # -*- coding:utf-8 -*- # Python 2.7 import urllib2 import urllib ...

  3. python 公众号爬虫_用Python爬虫爬取公众号文章

    经常有读者微信私聊我,问我有没有博客之类的,因为在手机上看公众号技术文章没有电脑上方便.确实,手机上看截图需要点击放大才能看得更清楚,代码也需要左右滑动才能看到全部.我的文章大部分都是首发于公众号,有 ...

  4. python简单网络爬虫_【Python】 简单网络爬虫实现

    介绍网络爬虫(英语:网络爬虫),也称为网络蜘蛛(蜘蛛)是一个Web机器人用于自动浏览万维网.其目的通常是为了编译web索引.\u2014\u2014维基百科web爬虫程序可以节省他们访问的页面,以便搜 ...

  5. python为什么叫爬虫-python为什么叫爬虫?为什么python开发会突然火起来?

    python为什么叫爬虫?为什么python开发会突然火起来?python的脚本特性,python易于配置,对字符的处理也非常灵活,加上python有丰富的网络抓取模块,所以两者经常联系在一起.Pyt ...

  6. 学python数学要好吗_学习Python数学英语基础重要吗?

    提到Python编程语言,大家就会想编程语言肯定会涉及到的就是代码,很多人看到那满屏的英文字母就头疼,觉得自己不会英语,肯定学不好Python,但是不会英语到底能不能够学习Python呢,下面小编给大 ...

  7. python制作电脑软件_利用PYTHON制作桌面版爬虫软件(一)

    抱歉,对长沙房地产数据的挖掘与分析[三],想了蛮久,觉得对自己的分析结果不是很理想.等我完善好了,我再发出来吧.今天继续开启新的一专题.主要讲解如何用PYTHON实现简单的桌面软件的制作. 题外话,我 ...

  8. python免费自学爬虫_这套Python爬虫学习教程,不到一天即可新手到进阶!免费领...

    想用Python做爬虫,而你却还不会Python的话,那么这些入门基础知识必不可少.很多小伙伴,特别是在学校的学生,接触到爬虫之后就感觉这个好厉害的样子,我要学.但是却完全不知道从何开始,很迷茫,学的 ...

  9. python随机生成车牌_使用Python自动化获取全国每个城市的车牌代码

    最近有这样一需求,需要获取12123交管查询网站上的全国每个城市对应的城市id和车牌代码.最初的想法是直接用Python写个爬虫,遍历每个城市,然后用Xpath提取DOM节点数据就好了.然而在实际操作 ...

最新文章

  1. Mybatis (ParameterType) 如何传递多个不同类型的参数
  2. 美国大学生数学建模竞赛赛题特点
  3. 查询成绩最好的前两名_收藏转发!一线老师用真实数据告诉你,高考成绩和平时成绩的关系...
  4. C语言 线性表的链式存储结构(链表实现)
  5. Vue-router(二) 子路由(嵌套路由)
  6. div文字自动扩充_文字资料扩充
  7. bios设置 联想m8000t_怎么进bios设置硬盘启动顺序
  8. 为什么C语言仍然占据统治地位?
  9. 附录-实模式下1M内存
  10. 职场80后新人修炼五诀
  11. Unity中Web.Config文件的配置与调用
  12. linux汇编指令输出到屏幕,Linux 汇编语言(GNU GAS汇编)开发指南
  13. ubuntu 16.04无法正常关机、重启
  14. 如何让centos访问windows/ntfs分区
  15. 信贷风控模型搭建及核心风控模式分类
  16. 为啥用计算机分析模拟,模拟电路的计算机分析与设计——Pspice程序应用
  17. python开发100个小程序_Python小程序100例
  18. PostgreSQL 修改数据库用户的密码
  19. matlab 图片合成视频
  20. java导出excel文件名乱码_Poi生成excel文件名乱码问题的解决方案

热门文章

  1. pytorch和python有什么区别_PyTorch到底好用在哪里?
  2. “被枪指头,中国教授用功夫击退美国劫匪”,他的身份不简单
  3. 我国博士不是太多了,而是太少了!
  4. 风靡全球的15则数学动图:让你秒懂数学概念,看后觉得相见恨晚啊
  5. 我不是在吓你,但是区块链,可能真的是普通人弯道超车的最后一个机会了。
  6. php扑克牌排序,PHP实现判断扑克牌5张连续
  7. Java8 Optional类
  8. Android 原生ExoPlayer 解析
  9. 打通JAVA与内核系列之一ReentrantLock锁的实现原理
  10. 云上虚拟IDC(私有池)如何为客户业务的确定性、连续性保驾护航