欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

python截圖函數(shù),如何給python的運行程序截圖

Python獲取屏幕截圖的幾種方法

Python獲取電腦截圖有多種方式,具體如下:

目前創(chuàng)新互聯(lián)已為上1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管綿陽服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計、古藺網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

PIL中的ImageGrab模塊

windows API

PyQt

pyautogui

使用Selenium截圖

使用PIL中的ImageGrab模塊簡單,但是效率有點低,截屏一次需0.5s。

調(diào)用windows API,速度快但是使用較復(fù)雜,這里就不做詳細介紹了,因為有更好用的PyQt。

PyQt比調(diào)用windows API簡單很多,而且有windows API的很多優(yōu)勢,比如速度快,可以指定獲取的窗口,即使窗口被遮擋。需注意的是,窗口最小化時無法獲取截圖。

首先需要獲取窗口的句柄。

程序會打印窗口的hwnd和title,有了title就可以進行截圖了。

pyautogui是比較簡單的,但是不能指定獲取程序的窗口,因此窗口也不能遮擋,不過可以指定截屏的位置,0.04s一張截圖,比PyQt稍慢一點,但也很快了。

使用Selenium只能進行WEB程序截圖

如何用python對整個文章截圖

方法一、使用PyQt4的QtWebKit組件

#!/usr/bin/env?python

#?-*-?coding:?UTF-8?-*-

#?來源?

import?sys

import?os.path

from?PyQt4?import?QtGui,QtCore,QtWebKit

class?PageShotter(QtGui.QWidget):

def?__init__(self,url,filename,parent=None):

QtGui.QWidget.__init__(self,parent)

self.url?=?url

self.filename?=?filename

self.webpage?=?None

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.save_page)

def?save_page(self,finished):

#print?finished

if?finished:

print?u"開始截圖!"

size?=?self.webpage.mainFrame().contentsSize()

print?u"頁面寬:%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=?self.filename;

if?img.save(filename):

filepath?=?os.path.join(os.path.dirname(__file__),?filename)

print?u"截圖完畢:%s"?%?filepath

else:

print?u"截圖失敗";

else:

print?u"網(wǎng)頁加載失敗!"

self.close()

if?__name__=="__main__":

app?=?QtGui.QApplication(sys.argv)

#shotter?=?PageShotter("")

shotter?=?PageShotter("",?'shot.png')

shotter.shot()

sys.exit(app.exec_())

方法二、使用selenium

#!/usr/bin/env?python

#?-*-?coding:?UTF-8?-*-

import?time

from?selenium?import?webdriver

browser?=?webdriver.Firefox()

browser.set_window_size(1055,?800)

browser.get("")

browser.find_element_by_id("idClose").click()

time.sleep(5)

browser.save_screenshot("shot.png")

browser.quit()

python如何截圖?(指定坐標(biāo)范圍,非全屏)

windows下?只截取一個點? 用PIL的ImageGrab:

import ImageGrab

bbox = (300, 300, 300+1, 300+1)

img = ImageGrab.grab(bbox)

img.save("pixel.png")

img.show()

Python程序抓圖 怎么用程序?qū)崿F(xiàn)截圖

由于在我的一個程序中想要添加一個截圖功能,今天看一下利用Python怎樣截圖,功能實現(xiàn)都挺簡單了,直接上代碼

from

PIL

import

ImageGrab

im

=

ImageGrab.grab()

im.save(addr,'jpeg')

很簡單的幾行代碼就實現(xiàn)了我要的功能,PIL(Python

Image

Library)是Python的一個圖形庫,需要自己下載安裝,im

=

ImageGrab.grab()這行代碼實現(xiàn)截圖功能,可以帶參數(shù),指定要截取圖片的坐標(biāo)位置,不帶參數(shù)默認全屏截圖,im.save(addr,'jpeg')是保存截取的圖片,第一個參數(shù)是保存路徑,第二個參數(shù)是圖片格式

新聞標(biāo)題:python截圖函數(shù),如何給python的運行程序截圖
轉(zhuǎn)載來于:http://chinadenli.net/article9/dsihioh.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)網(wǎng)站營銷網(wǎng)站維護網(wǎng)站設(shè)計關(guān)鍵詞優(yōu)化企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作