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

使用python制作一個截圖小工具

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

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

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

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

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

pip install pyautogui

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

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

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

一旦你安裝了pyautogui 模塊,最簡單的截圖方法是使用screenshot() 函數(shù)和save() 函數(shù)。下面是一個使用這些函數(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 找到。

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

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

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

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

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

通過在終端寫下以下命令來安裝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 讀取圖像時,它要求顏色的順序是BGR而不是默認(rèn)的RGB。最后,我們使用imwrite() 函數(shù)將圖像寫到磁盤上。

這就是輸出圖像的樣子。

輸出:

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

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

用Pillow模塊

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

這個模塊使用另一個叫做ImageGrab 的子模塊,讓我們設(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提供了這個叫做pyscreenshot 的模塊,其唯一的任務(wù)就是進(jìn)行截圖。要安裝這個模塊,在終端使用以下命令。

pip install pyscreenshot

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

示例代碼:

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

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

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

輸出:

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

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

示例代碼:

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

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

下面是捕捉到的圖像。

輸出:

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

總結(jié)

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

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

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

相關(guān)文章

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

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

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

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

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

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

    isinstance()是Python內(nèi)置的一個非常有用的函數(shù),用于檢查一個對象是否屬于指定的類型或類型元組中的某一個類型,它是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ì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • Python實(shí)現(xiàn)操作Redis所有類型的方法詳解

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

    Redis作為一款高性能的NoSQL數(shù)據(jù)庫,越來越受到了廣大開發(fā)者的喜愛。本篇博客將介紹如何使用Python操作Redis的所有類型,以及一些高級用法,感興趣的可以了解一下
    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ì)具有一定的參考價值,需要的小伙伴可以參考一下
    2022-03-03
  • Python 的七個HTTP請求庫對比小結(jié)

    Python 的七個HTTP請求庫對比小結(jié)

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

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

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

最新評論

宁明县| 兖州市| 砚山县| 密云县| 内江市| 洛扎县| 邵东县| 清镇市| 卢氏县| 友谊县| 晋宁县| 苍山县| 华坪县| 陵水| 依兰县| 金沙县| 德惠市| 泰州市| 鹰潭市| 沙湾县| 凤翔县| 拉萨市| 高碑店市| 舞钢市| 易门县| 克山县| 沧源| 东光县| 克山县| 上蔡县| 浮山县| 庆安县| 河源市| 怀化市| 江源县| 吉首市| 聂拉木县| 元氏县| 城口县| 三河市| 抚远县|