Ảnh chụp màn hình cửa sổ Python nhanh

Python MSS

from mss import mss

# The simplest use, save a screen shot of the 1st monitor
with mss[] as sct:
    sct.shot[]

Một mô-đun nhiều ảnh chụp màn hình đa nền tảng cực nhanh trong python thuần sử dụng ctypes

  • Trăn 3. Tuân thủ 7+ và PEP8, không phụ thuộc, an toàn cho luồng;
  • rất cơ bản, nó sẽ lấy một ảnh chụp màn hình theo màn hình hoặc ảnh chụp màn hình của tất cả các màn hình và lưu nó vào tệp PNG;
  • nhưng bạn có thể sử dụng PIL và hưởng lợi từ tất cả các định dạng của nó [hoặc trực tiếp thêm định dạng của bạn];
  • tích hợp tốt với Numpy và OpenCV;
  • nó có thể dễ dàng được nhúng vào các trò chơi và phần mềm khác yêu cầu các phương pháp nhanh và được tối ưu hóa cho nền tảng để chụp ảnh màn hình [như AI, Thị giác máy tính];
  • lấy mã nguồn trên GitHub;
  • tìm hiểu với một loạt các ví dụ;
  • bạn có thể báo cáo lỗi;
  • cần giúp đỡ?
  • và có một tài liệu đầy đủ và đẹp. ]
  • MSS là viết tắt của Nhiều ảnh chụp màn hình;

Cài đặt

Bạn có thể cài đặt nó với pip

python -m pip install -U --user mss

Hoặc bạn có thể cài đặt nó với conda

conda install -c conda-forge python-mss

Sự bảo trì

Đối với những người bảo trì, đây là các lệnh để tải lên một bản phát hành mới

rm -rf build dist
python -m build --sdist --wheel
twine check dist/*
twine upload dist/*

Giả sử, bạn chạy chương trình Python trên máy Windows của mình và bạn muốn chương trình này chụp ảnh màn hình. Làm thế nào để thực hiện điều này theo chương trình?

Phương pháp 1. Mô-đun Nhiều ảnh chụp màn hình

Để lập trình ghi lại một hoặc nhiều ảnh chụp màn hình trong chương trình Python của bạn, hãy chạy hàm

conda install -c conda-forge python-mss
0 từ mô-đun
conda install -c conda-forge python-mss
1

  • Cài đặt mô-đun Nhiều ảnh chụp màn hình [MSS], e. g. , bằng cách chạy
    conda install -c conda-forge python-mss
    
    2 trong Powershell hoặc dòng lệnh của bạn
  • Nhập hàm
    conda install -c conda-forge python-mss
    
    3 từ mô-đun
    conda install -c conda-forge python-mss
    
    1 bằng cách sử dụng câu lệnh Python.
    conda install -c conda-forge python-mss
    
    5
  • Mở môi trường with bằng câu lệnh Python.
    import PIL.ImageGrab
    
    screenshot = PIL.ImageGrab.grab[]
    screenshot.show[]
    
    0
  • Gọi hàm
    import PIL.ImageGrab
    
    screenshot = PIL.ImageGrab.grab[]
    screenshot.show[]
    
    1 trên môi trường
    import PIL.ImageGrab
    
    screenshot = PIL.ImageGrab.grab[]
    screenshot.show[]
    
    2 bằng cách sử dụng
    import PIL.ImageGrab
    
    screenshot = PIL.ImageGrab.grab[]
    screenshot.show[]
    
    3
________số 8

Nếu tôi chạy cái này trên máy Windows của mình, nó sẽ tạo một tệp

import PIL.ImageGrab

screenshot = PIL.ImageGrab.grab[]
screenshot.show[]
4 trong thư mục của tệp mã Python. Đây là cách tệp ảnh chụp màn hình tìm kiếm tôi

Nhân vật. Tệp ảnh chụp màn hình được tạo tự động trên máy Windows của tôi

Như bạn thấy từ thông báo lỗi cuối cùng, mô-đun

conda install -c conda-forge python-mss
1 không có trong thư viện chuẩn, vì vậy hãy đảm bảo cài đặt mô-đun đó bằng cách sử dụng pip hoặc bất kỳ phương tiện nào khác để thêm mô-đun vào môi trường của bạn

Bạn có thể tìm thêm các ví dụ về cách sử dụng mô-đun tại đây, chẳng hạn nếu bạn cần tùy chỉnh đường dẫn tệp hoặc tạo nhiều ảnh chụp màn hình

Phương pháp 2. PIL. ImageGrab. vồ lấy[]

Một cách đơn giản để ghi lại ảnh chụp màn hình trên máy Windows của bạn là sử dụng mô-đun PIL đã được cài đặt trong nhiều môi trường

  • Cài đặt PIL
  • Nhập mô-đun
    import PIL.ImageGrab
    
    screenshot = PIL.ImageGrab.grab[]
    screenshot.show[]
    
    6 bằng câu lệnh Python.
    import PIL.ImageGrab
    
    screenshot = PIL.ImageGrab.grab[]
    screenshot.show[]
    
    7
  • Tạo ảnh chụp màn hình và lưu trữ nó trong một biến như vậy.
    import PIL.ImageGrab
    
    screenshot = PIL.ImageGrab.grab[]
    screenshot.show[]
    
    8
  • Hiển thị ảnh chụp màn hình trên máy Windows của bạn.
    import PIL.ImageGrab
    
    screenshot = PIL.ImageGrab.grab[]
    screenshot.show[]
    
    9

Đây là mã 3 lớp đơn giản

import PIL.ImageGrab

screenshot = PIL.ImageGrab.grab[]
screenshot.show[]

Và đây là ảnh chụp màn hình hiện lên dưới dạng một cửa sổ mới trên máy của tôi

Nếu bạn muốn lưu trữ ảnh chụp màn hình ở một vị trí tệp cụ thể thay vì hiển thị nó bằng chương trình xem ảnh tiêu chuẩn của mình, hãy sử dụng phương pháp sau với

python -m pip install -U --user mss
50

python -m pip install -U --user mss
5

Phương pháp 3. PyAutoGUI

Nhà phát triển Python nổi tiếng Al Sweighart đã tạo một thư viện mạnh mẽ PyAutoGUI để điều khiển chuột và bàn phím cũng như tự động hóa các tương tác với các ứng dụng khác. Cách tiếp cận này hoạt động cho Windows, macOS và Linux cũng như Python 2 và 3. Nó cũng cung cấp chức năng

python -m pip install -U --user mss
51 lưu trữ ảnh chụp màn hình tại một vị trí đường dẫn nhất định trên máy tính của bạn

Để cài đặt PyAutoGUI, hãy chạy

python -m pip install -U --user mss
52. Sau đó chạy hai lớp lót sau

python -m pip install -U --user mss
9

Đây là một cách Pythonic, đơn giản và ngắn gọn để tạo ảnh chụp màn hình trong Python

Chris

Trong khi làm việc với tư cách là một nhà nghiên cứu trong các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính

Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners [NoStarch 2020], đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới

Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây

Chủ Đề