精华内容
参与话题
问答
  • python截图

    2019-09-28 16:51:43
    from PIL import ImageGrab ...im = ImageGrab.grab()这行代码实现截图功能,可以带参数,指定要截取图片的坐标位置,不带参数默认全屏截图,im.save(‘C:/Python/la.jpg’,'jpeg')是保存截取的图...
    from PIL import ImageGrab
    im = ImageGrab.grab()
    im.save('C:/Python/la.jpg','jpeg')
    

    im = ImageGrab.grab()这行代码实现截图功能,可以带参数,指定要截取图片的坐标位置,不带参数默认全屏截图,im.save(‘C:/Python/la.jpg’,'jpeg')是保存截取的图片,第一个参数是保存路径,第二个参数是图片格式

    转载于:https://www.cnblogs.com/fancing/p/8341163.html

    展开全文
  • python 截图

    2017-01-18 16:04:00
    PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。PIL功能非常强大,但API却非常简单易用,不过只支持到Python 2.7 Pillow:是PIL的一个派生分支,但如今已经发展成为比PIL本身更具活力...

    PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。PIL功能非常强大,但API却非常简单易用,不过只支持到Python 2.7

    Pillow:是PIL的一个派生分支,但如今已经发展成为比PIL本身更具活力的图像处理库。目前最新版本是3.0.0

    1、安装

    在Debian/Ubuntu Linux下直接通过apt安装:

    1
    $ sudo apt-get install python-imaging

    Mac和其他版本的Linux可以直接使用easy_install或pip安装,安装前需要把编译环境装好:

    1
    $ sudo easy_install PIL

    Windows平台就去PIL官方网站下载exe安装包或pip

    1
    $ pip install pillow

    2、实现屏幕截图

    1
    2
    3
    from PIL import ImageGrab
    im = ImageGrab.grab()
    im.save("1.png")    #定义保存的路径和保存的图片格式

    1、安装

    windows下:

    1
    2
    32位: http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.11.4/PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x32.exe
    64位: http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.11.4/PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x64.exe

    linux下:

    1
    https://www.riverbankcomputing.com/software/pyqt/download



    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    import sys,time
    import os.path
    from PyQt4 import QtGui, QtCore, QtWebKit
     
    class PageShotter(QtGui.QWidget):
        def __init__(self, url, parent=None):
            QtGui.QWidget.__init__(self, parent)
            self.url = url
     
        def shot(self):
            webView = QtWebKit.QWebView(self)
            webView.load(QtCore.QUrl(self.url))
            self.webPage = webView.page()
            self.connect(webView, QtCore.SIGNAL("loadFinished(bool)"), self.savePage)
     
        def savePage(self, finished):
            if finished:
                print "开始截图!"
                size = self.webPage.mainFrame().contentsSize()
                print "页面宽:%d,页面高:%d" % (size.width(), size.height())
                self.webPage.setViewportSize(QtCore.QSize(size.width() + 16, size.height()))
                img = QtGui.QImage(size, QtGui.QImage.Format_ARGB32)
                painter = QtGui.QPainter(img)
                self.webPage.mainFrame().render(painter)
                painter.end()
                fileName = "shot.png"
                if img.save(fileName):
                    filePath = os.path.join(os.path.dirname(__file__), fileName)
                    print "截图完毕:%s" % filePath
                else:
                    print "截图失败"
            else:
                print "网页加载失败!"
            self.close()
     
     
    if __name__ == "__main__":
        app = QtGui.QApplication(sys.argv)
        shotter = PageShotter("https://www.jd.com/")
        shotter.shot()
        sys.exit(app.exec_())
    展开全文
  • python 截图 抓图 源码

    2019-01-09 10:48:35
    python 截图 抓图 源码,支持快捷键截屏,自动保存,源码自由修改
  • python截图 安卓用

    2020-11-12 19:40:52
    python语言一键截图,安卓专用,还可以检测手机时候连线,是否在线,欢迎使用,自己一直在使用,苹果的暂时没有
  • python截图工具

    千次阅读 2019-01-09 16:45:27
    一、源码 import tkinter import tkinter.filedialog import os from PIL import ImageGrab from time import sleep #创建tkinter主窗口 root = tkinter.Tk() #指定主窗口位置与大小 root.geometry('100x40+400+...

    一、源码 

    import tkinter
    import tkinter.filedialog
    import os
    from PIL import ImageGrab
    from time import sleep
    
    #创建tkinter主窗口
    root = tkinter.Tk()
    #指定主窗口位置与大小
    root.geometry('100x40+400+300')
    #不允许改变窗口大小
    root.resizable(False, False)
    
    
    class MyCapture:
        def __init__(self, png):
            #变量X和Y用来记录鼠标左键按下的位置
            self.X = tkinter.IntVar(value=0)
            self.Y = tkinter.IntVar(value=0)
            #屏幕尺寸
            screenWidth = root.winfo_screenwidth()
            screenHeight = root.winfo_screenheight()
            #创建顶级组件容器
            self.top = tkinter.Toplevel(root, width=screenWidth, height=screenHeight)
            #不显示最大化、最小化按钮
            self.top.overrideredirect(True)
            self.canvas = tkinter.Canvas(self.top,bg='white', width=screenWidth, height=screenHeight)
            #显示全屏截图,在全屏截图上进行区域截图
            self.image = tkinter.PhotoImage(file=png)
            self.canvas.create_image(screenWidth//2, screenHeight//2, image=self.image)
            #鼠标左键按下的位置
            def onLeftButtonDown(event):
                self.X.set(event.x)
                self.Y.set(event.y)
                #开始截图
                self.sel = True
            self.canvas.bind('<Button-1>', onLeftButtonDown)
            #鼠标左键移动,显示选取的区域
            def onLeftButtonMove(event):
                if not self.sel:
                    return
                global lastDraw
                try:
                    #删除刚画完的图形,要不然鼠标移动的时候是黑乎乎的一片矩形
                    self.canvas.delete(lastDraw)
                except Exception as e:
                    pass
                lastDraw = self.canvas.create_rectangle(self.X.get(), self.Y.get(), event.x, event.y, outline='black')
            self.canvas.bind('<B1-Motion>', onLeftButtonMove)
            #获取鼠标左键抬起的位置,保存区域截图
            def onLeftButtonUp(event):
                self.sel = False
                try:
                    self.canvas.delete(lastDraw)
                except Exception as e:
                    pass
                sleep(0.1)
                #考虑鼠标左键从右下方按下而从左上方抬起的截图
                left, right = sorted([self.X.get(), event.x])
                top, bottom = sorted([self.Y.get(), event.y])
                pic = ImageGrab.grab((left+1, top+1, right, bottom))
                #弹出保存截图对话框
                fileName = tkinter.filedialog.asksaveasfilename(title='保存截图', filetypes=[('JPG files', '*.jpg')])
                if fileName:
                    pic.save(fileName+'.jpg')
                #关闭当前窗口
                self.top.destroy()
            self.canvas.bind('<ButtonRelease-1>', onLeftButtonUp)
            self.canvas.pack(fill=tkinter.BOTH, expand=tkinter.YES)
        #开始截图
    def buttonCaptureClick():
        #最小化主窗口
        root.state('icon')
        sleep(0.2)
        
        filename = 'temp.png'
        im = ImageGrab.grab()
        im.save(filename)
        im.close()
        #显示全屏幕截图
        w = MyCapture(filename)
        buttonCapture.wait_window(w.top)
        #截图结束,恢复主窗口,并删除临时的全屏幕截图文件
        root.state('normal')
        os.remove(filename)
    buttonCapture = tkinter.Button(root, text='截图', command=buttonCaptureClick)
    buttonCapture.place(x=10, y=10, width=80, height=20)
    #启动消息主循环
    root.mainloop()

    二、结果

    展开全文
  • Python截图代码

    2019-12-04 21:17:51
    需求:对大量同尺寸的图片需要裁剪同样区域的图片出来,采用鼠标框选范围。 # 功能:对在当前工程文件夹中的指定路劲的文件中的所有图片进行定点裁剪 # 知识点:一张图片需要裁剪出一个矩形的话只需要两个点,左上...

    需求:对大量同尺寸的图片需要裁剪同样区域的图片出来,采用鼠标框选范围。

     # 功能:对在当前工程文件夹中的指定路劲的文件中的所有图片进行定点裁剪
     # 知识点:一张图片需要裁剪出一个矩形的话只需要两个点,左上角和右下角(point1,point2 );
     # 输入参数:dir_name, point1, point2 ,  save_dir(记得加上/)
     # 所有对的图片只需要截取一部分保存,保存原来的名字即可
     # 1、对dir_name中的而所有元素遍历,对于i,2、取其name暂存,3、取其值进行角点裁剪4、保存裁剪图片(save_name+2中的原图片名称)
     # 2019/11/20    By  liiuli  in WUST
     # firtst modified on 2019/11.21
    import os
    import cv2
    
    global img
    global point1, point2
    
    def on_mouse(event, x, y, flags, param):
        global img, point1, point2
        img2 = img.copy()
        if event == cv2.EVENT_LBUTTONDOWN:  # 左键点击
            point1 = (x, y)
            cv2.circle(img2, point1, 10, (0, 255, 0), 5)
            cv2.imshow('image', img2)
        elif event == cv2.EVENT_MOUSEMOVE and (flags & cv2.EVENT_FLAG_LBUTTON):  # 按住左键拖曳
            cv2.rectangle(img2, point1, (x, y), (255, 0, 0), 5)
            cv2.imshow('image', img2)
        elif event == cv2.EVENT_LBUTTONUP:  # 左键释放
            point2 = (x, y)
    
    def cut(color_src_name,depth_src_name, point1,point2, color_save_name ,depth_save_name):
        # get the 4 point of the imag
        min_x = min(point1[0], point2[0])
        min_y = min(point1[1], point2[1])
        width = abs(point1[0] - point2[0])
        height = abs(point1[1] - point2[1])
    
        for imgname in os.listdir( color_src_name):
            #print(imgname)
            #read a imag
            color_img = cv2.imread(color_src_name+imgname)
            cut_color_img = color_img[min_y:min_y + height, min_x:min_x + width]
            cv2.imwrite(color_save_name+imgname, cut_color_img)
    
        for imgname in os.listdir( depth_src_name):
            #print(imgname)
            #read a imag
            depth_img = cv2.imread(depth_src_name+imgname)
            cut_depth_img = depth_img[min_y:min_y + height, min_x:min_x + width]
            cv2.imwrite(depth_save_name+imgname, cut_depth_img)
    
    def get_the_first_file_name(dir):
        for imgname in os.listdir(dir):
            # print(imgname)
            # read a imag
            return imgname
    
    # try to write a function to gain autimotionaly point1 and point2 here
    color_src_name = "E:\VS_project_dir\Color_depth\Project1\color/"
    color_save_name = "E:\VS_project_dir\Color_depth\Project1\cutimg/"
    depth_src_name ="E:\VS_project_dir\Color_depth\Project1\depth/"
    depth_save_name ="E:\VS_project_dir\Color_depth\Project1\depthcut/"
    
    # cut(color_src_name ,depth_src_name,point1,point2,color_save_name,depth_save_name);
    # 在colorIMG,jpg中
    def main():
        global img
        global point1, point2
        # the first RGBimage in the dir 'color_src_name' should be showed to wait to be extract point by the mourse
        img = cv2.imread(color_src_name+get_the_first_file_name(color_src_name))
        cv2.namedWindow('image')
        cv2.setMouseCallback('image', on_mouse)
        cv2.imshow('image', img)
    
        cv2.waitKey(0)
        cut(color_src_name, depth_src_name, point1, point2, color_save_name, depth_save_name);
    
    if __name__ == '__main__':
        main()
    
    
    展开全文
  • 一直想用python实现一个类似QQ截图的功能,但不直接截图,而是返回截图的区域,以下是代码# -*- coding:utf-8 -*-import tkinterimport tkinter.filedialogimport osfrom PIL import ImageGrabfrom time import ...
  • from ctypes import*import os,timeimport pyautogui as pagimport win32conimport win32guifrom PIL import ImageGrab#----------------------------hwnd = win32gui.FindWindow(32770,"大家来找茬")if not hwnd: ....
  • 今天小编就为大家分享一篇selenium+python截图不成功的解决方法 ,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • python截图和打包

    2019-09-05 17:30:38
    python截图功能及打包exe文件python截图库和定时库threading库的Timer函数PIL库的ImageGrab函数OS库pyinstaller打包文件 python截图库和定时库 你好! 因为要实现一个定时间隔截屏的功能,所以用python做了一个定时...
  • Python截图文字识别工具

    千次阅读 多人点赞 2019-08-01 15:11:26
    学习python中有什么不懂的地方,小编这里推荐加小编的python学习群:895817687有任何不懂的都可以在里面交流,还有很好的视频教程pdf学习资料,大家一起学习交流! 1 特殊字符:.^$?+*{}| 以上特殊字符要想使用字...
  • selenium python截图函数

    2018-10-24 14:43:40
    webdriver的get_screenshot_as_file()函数截图当前页面并保存到指定的路径下面 #coding=utf-8 from selenium import webdriver driver=webdriver.Firefox() driver.get('http://www.baidu.com') try:  driver.get...
  • Appium +Python 截图方法

    2019-03-12 14:08:00
    在实际的自动化项目运行过程中,App可能会出现很多异常,为了更好的定位到问题,除了捕捉日志,我们还需要对运行的设备状态进行截图。 方法: 1.save_screenshot()直接保存当前屏幕截图到当前脚本所在文件位置 ...
  • 本来在centos上用的好好的python+selenium+phantomjs,需要搬迁到ubuntu上面。 搭环境的时候确实比较容易踩着坑,搞了半天终于全装上了。 跑一下吧,然后发现截图怎么分辨率这么低,而且汉字全是小框框。查了下,...
  • 最近心血来潮,就想自己写一个截图的小工具,使用PyQt5实现一个简易的截图工具,按下快捷键就可以进行截图 需要安装的包:
  • selenium+python截图不成功

    千次阅读 2017-12-12 20:26:00
    selenium+python,使用webdriver的截图函数get_screenshot_as_file()截图,代码如下: from selenium import webdriver from time import sleep driver=webdriver.Chrome() driver.get("https://www.baidu.com") ...
  • Python 截图并复制到剪贴板

    千次阅读 2018-09-10 08:45:56
    除了打开比较慢,要到文件夹中打开,这些不太方便外,还是挺好用的。 import time import PyQt5 from PyQt5.QtCore import * ...from PyQt5.QtGui import * ...from PyQt5.QtWidgets import * ... def __init__(self,...
  • Win平台下使用Python截图的各种方法0x00 前言0x01 使用PIL库PIL简介使用PIL截图0x02 Windows API 方法关于Windows API使用win32api截图0x03 使用PyQtPyQt 简介使用PyQt截图 0x00 前言 一年前,我在油管上曾经看到过一...

空空如也

1 2 3 4 5 ... 20
收藏数 5,321
精华内容 2,128
关键字:

python截图

python 订阅