最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用python制作一個(gè)截圖小工具

 更新時(shí)間:2023年12月27日 09:09:34   作者:Python學(xué)習(xí)者  
這篇文章主要討論了我們?nèi)绾问褂肞ython編程語言進(jìn)行截圖,我們看到了如何使用pyautogui 模塊與save() 函數(shù)和其他模塊,如NumPy 和OpenCV ,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下

Python編程語言允許我們執(zhí)行各種任務(wù),所有這些都是在簡(jiǎn)單模塊和短小精悍的代碼的幫助下完成的。在Python的幫助下進(jìn)行屏幕截圖就是這樣一項(xiàng)任務(wù)。

Python為我們提供了許多模塊,使我們能夠執(zhí)行不同的任務(wù)。有多種方法可以使用Python及其庫進(jìn)行屏幕截圖。

用Pyautogui模塊進(jìn)行截圖

第一種方法是使用Python提供的pyauotgui 模塊。你可以在終端窗口使用下面的命令來安裝這個(gè)模塊。

pip install pyautogui

pyautogui 模塊使用screenshot() 函數(shù),它有助于捕捉整個(gè)屏幕。之后,你可以使用save() 函數(shù)來保存圖像,或者使用imwrite() 函數(shù)與NumPy 和OpenCV 模塊一起把圖像寫到磁盤上。

詳細(xì)了解一下這兩種方法。

1.用Pyautogui模塊中的save() 函數(shù)

一旦你安裝了pyautogui 模塊,最簡(jiǎn)單的截圖方法是使用screenshot() 函數(shù)和save() 函數(shù)。下面是一個(gè)使用這些函數(shù)的示例代碼。

示例代碼:

import pyautogui
demo_image = pyautogui.screenshot()
demo_image.save("demo_one.jpg")

首先,我們導(dǎo)入pyautogui 模塊。然后,我們調(diào)用screenshot() 函數(shù),該函數(shù)捕獲了屏幕的圖像。

此外,在最后一行代碼中,我們使用save() 函數(shù)和我們想保存的圖像的名稱。在這種情況下,捕獲的圖像可以通過文件名demo_one.jpg 找到。

下面是我們得到的輸出圖像。注意,你會(huì)在Jupyter筆記本或Python的同一目錄下找到這個(gè)圖像。

如果你想在捕捉圖像時(shí)有一些延遲,你可以使用time 模塊的sleep() 函數(shù)。

2.用Numpy和Opencv模塊與Pyautogui一起使用

第二種方法涉及到與pyautogui 一起使用另外兩個(gè)模塊;它們是NumPy 和OpenCV 。在第一種方法中,我們使用save() 函數(shù)來保存圖像。

但在這里,我們將使用這兩個(gè)模塊來拍攝和保存屏幕截圖。

通過在終端寫下以下命令來安裝Numpy 和OpenCV 。

pip install numpy

pip install opencv-python

下面是所有模塊安裝后必須使用的代碼。

示例代碼:

#import the required modules
import numpy as x
import cv2
import pyautogui
#use pyautogui to take screenshot
demo_image = pyautogui.screenshot()
#use opencv and numpy to manipulate image
demo_image = cv2.cvtColor(x.array(demo_image),cv2.COLOR_RGB2BGR)
#save the image using opencv
cv2.imwrite("demo_two.png", demo_image)

我們首先導(dǎo)入了所需的模塊,然后使用screenshot() 函數(shù)來捕獲屏幕。然后,我們將圖像轉(zhuǎn)換為NumPy 數(shù)組,并將顏色的順序從RGB改為BGR。

這樣做是因?yàn)楫?dāng)OpenCV 讀取圖像時(shí),它要求顏色的順序是BGR而不是默認(rèn)的RGB。最后,我們使用imwrite() 函數(shù)將圖像寫到磁盤上。

這就是輸出圖像的樣子。

輸出:

以上是關(guān)于如何在Python中使用pyautogui 模塊進(jìn)行屏幕截圖的全部?jī)?nèi)容。現(xiàn)在,我們要進(jìn)入下一個(gè)方法來做同樣的事情。

要了解更多關(guān)于pyautogui 模塊的信息,請(qǐng)參考這個(gè)文檔。

用Pillow模塊

使用pyautogui 模塊,默認(rèn)情況下可以捕獲整個(gè)屏幕。然而,如果我們必須捕捉屏幕的一部分,我們可以使用Pillow 模塊。

這個(gè)模塊使用另一個(gè)叫做ImageGrab 的子模塊,讓我們?cè)O(shè)置我們想要捕捉的屏幕區(qū)域的坐標(biāo)。我們使用grab() 函數(shù)來指定這些坐標(biāo)。

下面是這種方法的代碼。

示例代碼:

#Python小白學(xué)習(xí)交流群:711312441
from PIL import ImageGrab
ss_coordinates = (200, 200, 600, 600)
demo_image = ImageGrab.grab(ss_coordinates)
demo_image.save("demo_three.jpg")

我們首先導(dǎo)入了Pillow 模塊和ImageGrab 子模塊。然后,我們?yōu)槲覀兿胍蹲降钠聊辉O(shè)置了一些坐標(biāo)。

此外,我們使用grab() 函數(shù),并將這些坐標(biāo)傳遞給該函數(shù)。然后,使用save() 方法保存捕獲的圖像。

這就是我們得到的屏幕截圖。

輸出

從本質(zhì)上講,這就是在Python中拍攝屏幕截圖的方法,即通過設(shè)置坐標(biāo)。參考該文檔以了解更多關(guān)于Pillow 模塊的信息。

用Pyscreenshot模塊

Python提供了這個(gè)叫做pyscreenshot 的模塊,其唯一的任務(wù)就是進(jìn)行截圖。要安裝這個(gè)模塊,在終端使用以下命令。

pip install pyscreenshot

一旦該模塊安裝完畢,使用這段代碼對(duì)整個(gè)屏幕進(jìn)行截圖。

示例代碼:

import pyscreenshot
image_demo = pyscreenshot.grab()
image_demo.save("demo_four.png")

我們首先導(dǎo)入了pyscreenshot 模塊,然后使用grab() 函數(shù)來捕獲屏幕。最后,我們使用save() 函數(shù)來保存圖像。

下面是我們得到的圖像的輸出。

輸出:

我們還可以使用這個(gè)模塊來捕捉屏幕的一部分。我們只需將所需的坐標(biāo)作為一個(gè)元組傳遞給grab() 函數(shù)。

下面是對(duì)屏幕特定部分進(jìn)行截圖的代碼。

示例代碼:

import pyscreenshot
image_demo = pyscreenshot.grab(bbox=(100, 100, 500, 500))
image_demo.save("demo_five.png")

請(qǐng)注意,我們?cè)诖a的第二行中傳遞了我們想要捕捉的屏幕部分的坐標(biāo)。其余的代碼與前面的代碼工作相同。

下面是捕捉到的圖像。

輸出:

注意這個(gè)模塊,pyscreenshot ,已經(jīng)不怎么用了,你最好選擇我們討論的前兩種在Python中拍攝屏幕的方法。這就是關(guān)于如何在Python中進(jìn)行屏幕截圖的全部?jī)?nèi)容。

總結(jié)

這篇文章討論了我們?nèi)绾问褂肞ython編程語言進(jìn)行截圖。我們看到了如何使用pyautogui 模塊與save() 函數(shù)和其他模塊,如NumPy 和OpenCV 。

我們還學(xué)習(xí)了如何使用Python的Pillow 模塊來捕捉屏幕的一部分。此外,我們還看到了如何使用pyscreenshot 模塊來捕獲整個(gè)屏幕和它的一部分。

到此這篇關(guān)于使用python制作一個(gè)截圖小工具的文章就介紹到這了,更多相關(guān)python制作截圖工具內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何使用Python進(jìn)行OCR識(shí)別圖片中的文字

    如何使用Python進(jìn)行OCR識(shí)別圖片中的文字

    這篇文章主要介紹了使用Python進(jìn)行OCR識(shí)別圖片中的文字 ,本文通過實(shí)例代碼加文字說明的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-04-04
  • Python解決線性代數(shù)問題之矩陣的初等變換方法

    Python解決線性代數(shù)問題之矩陣的初等變換方法

    今天小編就為大家分享一篇Python解決線性代數(shù)問題之矩陣的初等變換方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python中isinstance()函數(shù)原理解釋及詳細(xì)用法示例

    Python中isinstance()函數(shù)原理解釋及詳細(xì)用法示例

    isinstance()是Python內(nèi)置的一個(gè)非常有用的函數(shù),用于檢查一個(gè)對(duì)象是否屬于指定的類型或類型元組中的某一個(gè)類型,它是Python類型檢查的核心工具之一,比傳統(tǒng)的type()函數(shù)更加靈活和安全,本文給大家介紹Python中isinstance()函數(shù)原理解釋及詳細(xì)用法,感興趣的朋友一起看看吧
    2025-09-09
  • Python?Pandas中的分組聚合操作詳解

    Python?Pandas中的分組聚合操作詳解

    Pandas是Python中用于數(shù)據(jù)分析的重要工具,提供了豐富的數(shù)據(jù)操作方法,本文將介紹?Pandas?中的數(shù)據(jù)分組方法以及不同的聚合操作,感興趣的小伙伴可以學(xué)習(xí)一下
    2023-11-11
  • 6行Python代碼實(shí)現(xiàn)進(jìn)度條效果(Progress、tqdm、alive-progress​​​​​​​和PySimpleGUI庫)

    6行Python代碼實(shí)現(xiàn)進(jìn)度條效果(Progress、tqdm、alive-progress​​

    這篇文章主要介紹了6行Python代碼實(shí)現(xiàn)進(jìn)度條效果(Progress、tqdm、alive-progress和PySimpleGUI庫),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • Python實(shí)現(xiàn)操作Redis所有類型的方法詳解

    Python實(shí)現(xiàn)操作Redis所有類型的方法詳解

    Redis作為一款高性能的NoSQL數(shù)據(jù)庫,越來越受到了廣大開發(fā)者的喜愛。本篇博客將介紹如何使用Python操作Redis的所有類型,以及一些高級(jí)用法,感興趣的可以了解一下
    2023-04-04
  • Gradio機(jī)器學(xué)習(xí)模型快速部署工具quickstart前篇

    Gradio機(jī)器學(xué)習(xí)模型快速部署工具quickstart前篇

    這篇文章主要為大家介紹了Gradio機(jī)器學(xué)習(xí)模型快速部署工具quickstart準(zhǔn)備原文翻譯,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • Matplotlib實(shí)現(xiàn)各種條形圖繪制

    Matplotlib實(shí)現(xiàn)各種條形圖繪制

    這篇文章主要介紹了Matplotlib實(shí)現(xiàn)各種條形圖繪制,文章通過利用 plt.bar 方法實(shí)現(xiàn)各種條形圖繪制,內(nèi)容詳細(xì)具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-03-03
  • Python 的七個(gè)HTTP請(qǐng)求庫對(duì)比小結(jié)

    Python 的七個(gè)HTTP請(qǐng)求庫對(duì)比小結(jié)

    本文主要介紹了Python 的七個(gè)HTTP請(qǐng)求庫對(duì)比小結(jié),文中通過圖表,示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-06-06
  • 詳解python中的time和datetime的常用方法

    詳解python中的time和datetime的常用方法

    Python time time() 返回當(dāng)前時(shí)間的時(shí)間戳(1970紀(jì)元后經(jīng)過的浮點(diǎn)秒數(shù))。這篇文章主要介紹了python之time和datetime的常用方法 ,需要的朋友可以參考下
    2019-07-07

最新評(píng)論

太白县| 建水县| 佳木斯市| 枞阳县| 伊吾县| 富川| 福海县| 筠连县| 和硕县| 鄂温| 拜城县| 永善县| 马尔康县| 桃园县| 巴南区| 安达市| 同仁县| 湖州市| 商洛市| 临沭县| 吴桥县| 永川市| 五原县| 浦东新区| 商水县| 岱山县| 瓦房店市| 神农架林区| 台州市| 青岛市| 兴山县| 涞水县| 东至县| 宁河县| 蚌埠市| 香河县| 拉萨市| 左云县| 垫江县| 巨野县| 广平县|