ImageGrab模塊如何在Python中使用-創(chuàng)新互聯(lián)

這篇文章給大家介紹ImageGrab模塊如何在Python中使用,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

創(chuàng)新互聯(lián)專注于企業(yè)成都營銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、且末網(wǎng)站定制設(shè)計、自適應品牌網(wǎng)站建設(shè)、成都h5網(wǎng)站建設(shè)商城開發(fā)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應式網(wǎng)頁設(shè)計等建站業(yè)務,價格優(yōu)惠性價比高,為且末等各大城市提供網(wǎng)站開發(fā)制作服務。

一、ImageGrab模塊的函數(shù)

1、  Grab

定義:ImageGrab.grab()? image

  ImageGrab.grab(bbox) ? image

含義:(New in 1.1.3)抓取當前屏幕的快照,返回一個模式為“RGB”的圖像。參數(shù)邊界框用于限制只拷貝當前屏幕的一部分區(qū)域。

例子:

>>> from PIL importImage, ImageGrab
>>> im =ImageGrab.grab() 
>>> im.size 
(1366, 768) 
>>> im.mode 
'RGB' 
>>> im.show() 
>>> im0 =ImageGrab.grab((300, 100, 1400, 600)) 
>>> im0.show()
>>> im0.size
(1100, 500)
>>> im0.mode
'RGB'

圖像im是拷貝了整個屏幕的內(nèi)容,其尺寸為1366x768,為我的顯示器當前分辨率尺寸。圖像im0拷貝了區(qū)域(300, 100, 1400, 600)中1100x500大小的屏幕內(nèi)容。

圖像im如下:

ImageGrab模塊如何在Python中使用                           

圖像im0如下:

ImageGrab模塊如何在Python中使用

2、  Grabclipboard

定義:ImageGrab.grabclipboard()? image or list of strings or None

含義:(New in 1.1.4)抓取當前剪貼板的快照,返回一個模式為“RGB”的圖像或者文件名稱的列表。如果剪貼板不包括圖像數(shù)據(jù),這個函數(shù)返回空。

用戶可以使用函數(shù)isinstance()來檢查該函數(shù)返回的是一個有效圖像對象或者其他數(shù)據(jù)。

例子:

from PIL import Image, ImageGrab
 
im = ImageGrab.grabclipboard() 
if isinstance(im, Image.Image):
 print "Image: size : %s, mode: %s" % (im.size, im.mode)
 im.save("D:\\Document\\mdoc\\python\\pic\\12\\grab_grabclipboard.jpg")
elif im:
 for filename in im:
  try:
   print "filename: %s" % filename
   im = Image.open(filename)   
  except IOError:
   pass #ignore this file
  else:
   print "ImageList: size : %s, mode: %s" % (im.size, im.mode)
else:
 print "clipboard is empty."

通過實驗,發(fā)現(xiàn)在畫圖工具中打開圖像,選擇一部分然后剪貼,會返回一張模式為“RGB”的圖像。如果在文件夾下剪貼圖像文件,則會返回“clipboard is empty.”,即這里獲取的剪貼板內(nèi)容為空或者非圖像內(nèi)容。

本次測試的結(jié)果如下:


>>>================================ RESTART ================================

>>>

Image: size : (566, 335),mode: RGB

>>> im.size

(566, 335)

>>> im.mode

'RGB'

>>> im.show()

圖像im如下:

 ImageGrab模塊如何在Python中使用

二、Python中的isinstance函數(shù)

isinstance是Python中的一個內(nèi)建函數(shù)

語法:

isinstance(object,classinfo)

如果參數(shù)object是classinfo的實例,或者object是classinfo類的子類的一個實例,返回True。如果object不是一個給定類型的對象,則返回結(jié)果總是False。

如果classinfo不表示一個類(類型對象),那么它要么是一個類的元組,或者遞歸地包含這樣的(由數(shù)據(jù)類型構(gòu)成的)元組.其他的序列類型是不被允許的。

如果classinfo不是一種數(shù)據(jù)類型或者由數(shù)據(jù)類型構(gòu)成的元組,將引發(fā)一個TypeError異常。

例子:

>>>isinstance(100, int)
True
 
>>>isinstance(10.5, int)
False
 
>>>isinstance(10.5, float)
True
 
>>>isinstance(10.5, int)
False

>>>isinstance(10.5, (int,float)) 
True

屏幕截圖

示例代碼

from PIL import Image
from PIL import ImageGrab
 
size = (300,300,400,400)
img = ImageGrab.grab(size)
img.save("cut.jpg")
img.show()

關(guān)于ImageGrab模塊如何在Python中使用就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

本文名稱:ImageGrab模塊如何在Python中使用-創(chuàng)新互聯(lián)
鏈接地址:http://muchs.cn/article22/dodccc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、App開發(fā)、網(wǎng)站排名品牌網(wǎng)站制作、靜態(tài)網(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)

網(wǎng)站托管運營