Python实现屏幕截图的代码及函数详解


Posted in Python onOctober 01, 2016

废话不多说,先给大家看下python实现屏幕截图的代码,具体代码如下所述:

from selenium import webdriver
import time
def capture(url, save_fn="capture.png"):
browser = webdriver.Firefox() # Get local session of firefox
browser.set_window_size(1200, 900)
browser.get(url) # Load page
browser.execute_script("""
(function () {
var y = 0;
var step = 100;
window.scroll(0, 0);
function f() {
if (y < document.body.scrollHeight) {
y += step;
window.scroll(0, y);
setTimeout(f, 50);
} else {
window.scroll(0, 0);
document.title += "scroll-done";
}
}setTimeout(f, 1000);
})();
""")
for i in xrange(30):
if "scroll-done" in browser.title:
break
time.sleep(1)
browser.save_screenshot(save_fn)
browser.close()
if __name__ == "__main__":
capture(https://3water.com)

Pythony实现屏幕截屏的函数如下所述:

# -*- coding: cp936 -*- 
import time,Image 
import os, win32gui, win32ui, win32con, win32api 
def window_capture(dpath): 
''''' 
截屏函数,调用方法window_capture('d:\\') ,参数为指定保存的目录 
返回图片文件名,文件名格式:日期.jpg 如:2009328224853.jpg 
'''
hwnd = 0
hwndDC = win32gui.GetWindowDC(hwnd) 
mfcDC=win32ui.CreateDCFromHandle(hwndDC) 
saveDC=mfcDC.CreateCompatibleDC() 
saveBitMap = win32ui.CreateBitmap() 
MoniterDev=win32api.EnumDisplayMonitors(None,None) 
w = MoniterDev[0][2][2] 
h = MoniterDev[0][2][3] 
#print w,h #图片大小 
saveBitMap.CreateCompatibleBitmap(mfcDC, w, h) 
saveDC.SelectObject(saveBitMap) 
saveDC.BitBlt((0,0),(w, h) , mfcDC, (0,0), win32con.SRCCOPY) 
cc=time.gmtime() 
bmpname=str(cc[0])+str(cc[1])+str(cc[2])+str(cc[3]+8)+str(cc[4])+str(cc[5])+'.bmp'
saveBitMap.SaveBitmapFile(saveDC, bmpname) 
Image.open(bmpname).save(bmpname[:-4]+".jpg") 
os.remove(bmpname) 
jpgname=bmpname[:-4]+'.jpg'
djpgname=dpath+jpgname 
copy_command = "move %s %s" % (jpgname, djpgname) 
os.popen(copy_command) 
return bmpname[:-4]+'.jpg'
#调用截屏函数 
window_capture('d:\\')

以上所述是小编给大家分享的Python实现屏幕截图的代码及函数详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的,在此有非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python爬虫包BeautifulSoup学习实例(五)
Jun 17 Python
设置python3为默认python的方法
Oct 31 Python
python读取xlsx的方法
Dec 25 Python
ZABBIX3.2使用python脚本实现监控报表的方法
Jul 02 Python
解决Python3 控制台输出InsecureRequestWarning问题
Jul 15 Python
为什么说Python可以实现所有的算法
Oct 04 Python
Python求解正态分布置信区间教程
Nov 20 Python
基于python实现学生信息管理系统
Nov 22 Python
python+opencv边缘提取与各函数参数解析
Mar 09 Python
Python捕获异常堆栈信息的几种方法(小结)
May 18 Python
golang/python实现归并排序实例代码
Aug 30 Python
Python OpenCV超详细讲解基本功能
Apr 02 Python
Python爬取APP下载链接的实现方法
Sep 30 #Python
Python脚本实现12306火车票查询系统
Sep 30 #Python
Python ldap实现登录实例代码
Sep 30 #Python
python之Socket网络编程详解
Sep 29 #Python
python 排序算法总结及实例详解
Sep 28 #Python
一些常用的Python爬虫技巧汇总
Sep 28 #Python
Python三级目录展示的实现方法
Sep 28 #Python
You might like
PHP邮件专题
2006/10/09 PHP
php中常用的预定义变量小结
2012/05/09 PHP
PHP内核探索:变量存储与类型使用说明
2014/01/30 PHP
新浪微博OAuth认证和储存的主要过程详解
2015/03/27 PHP
ThinkPHP6.0如何利用自定义验证规则规范的实现登陆
2020/12/16 PHP
用javascript判断IE版本号简单实用且向后兼容
2013/09/11 Javascript
JavaScript 数组详解
2013/10/10 Javascript
探寻Javascript执行效率问题
2014/11/12 Javascript
JS操作COOKIE实现备忘记录的方法
2016/04/01 Javascript
JS实现点击表头表格自动排序(含数字、字符串、日期)
2017/01/22 Javascript
JQuery中Ajax的操作完整例子
2017/03/07 Javascript
vue 列表页跳转详情页获取id以及详情页通过id获取数据
2019/03/27 Javascript
vue.js中ref及$refs的使用方法解析
2019/10/08 Javascript
浅谈Three.js截图并下载的大坑
2019/11/01 Javascript
vue使用自定义事件的表单输入组件用法详解【日期组件与货币组件】
2020/06/01 Javascript
Electron整合React使用搭建开发环境的步骤详解
2020/06/07 Javascript
vue调用微信JSDK 扫一扫,相册等需要注意的事项
2021/01/03 Vue.js
Vue常用API、高级API的相关总结
2021/02/02 Vue.js
利用Python进行异常值分析实例代码
2017/12/07 Python
Python3.4学习笔记之常用操作符,条件分支和循环用法示例
2019/03/01 Python
如何使用Python进行OCR识别图片中的文字
2019/04/01 Python
Python面向对象程序设计之私有变量,私有方法原理与用法分析
2020/03/23 Python
keras-siamese用自己的数据集实现详解
2020/06/10 Python
如何使用Python调整图像大小
2020/09/26 Python
微信端html5页面调用分享接口示例
2018/03/14 HTML / CSS
Parts Express:音频、视频和扬声器的第一来源
2017/04/25 全球购物
土耳其风格手工珠宝:Ottoman Hands
2019/07/26 全球购物
Foot Locker澳洲官网:美国运动服和鞋类零售商
2019/10/11 全球购物
俄罗斯香水和化妆品在线商店:Aroma-butik
2020/02/28 全球购物
制冷与电控专业应届生求职信
2013/11/11 职场文书
新年爱情寄语
2014/04/08 职场文书
秘书英文求职信
2014/04/16 职场文书
企业文化标语口号
2014/06/09 职场文书
来探秘“德国中小企业”的成功之道
2019/07/26 职场文书
《水浒传》读后感3篇(范文)
2019/09/19 职场文书
详解Django的MVT设计模式
2021/04/29 Python