200kb能作甚?mss表示我给你整个截图程序

200KB能做什么?干不了啥吧,mss表示:不不不,这已经足够我给你实现一个完整且全面的截屏功能了。

一、安装

bash 复制代码
pip install mss

二、基本使用

2.1 语法

截屏的所有操作,只需定义 with mss() as sct ,而后进行操作即可。

python 复制代码
from mss import mss

with mss() as sct:
    # ...

2.2 全屏截屏

只需使用 sct.shot 即可进行全屏截屏。

python 复制代码
from mss import mss

with mss() as sct:
    sct.shot()

2.3 截图并重命名

是的,还是超级简单,直接在 shot 方法中,传入 output 参数即可。

python 复制代码
sct.shot(output=f'screenshot_.png')

2.4 截取指定区域

选定区域,然后获取区域截图,调用 mss 自带的工具进行文件保持即可

python 复制代码
import mss.tools

# 定义截屏区域
monitor = {"top": 100, "left": 100, "width": 300, "height": 300}

with mss.mss() as sct:
    # 获取指定区域的截图
    screenshot = sct.grab(monitor)
    # 保存截图
    mss.tools.to_png(screenshot.rgb, screenshot.size, output='region_screenshot.png')

三、高级使用

3.1 命令行操作

如果不想撰写代码实现截屏功能,你甚至可以直接用命令行进行截屏。

bash 复制代码
# 截取当前主屏
mss

# 截取当前主屏并重命名为screenshot.png
mss -o screenshot.png

# 选定截取范围
mss -c 100,100,800,600

命令行截图操作示意如图:

今天就写到这吧,难得周末,偷个懒,打王者去啦,明天补上后续的。

相关推荐
2301_7641505612 分钟前
Pandas GroupBy:将分组数据聚合为列表并赋值到新列
jvm·数据库·python
NotFound48613 分钟前
c++ 逆向工程ida pro c++如何使用ida pro插件和脚本
jvm·数据库·python
qq_1898070316 分钟前
CSS如何根据浏览器支持引入样式_利用@supports进行条件加载
jvm·数据库·python
qq_3345635519 分钟前
CSS如何实现移动端文字转阴影效果_通过text-stroke模拟描边
jvm·数据库·python
m0_3776182321 分钟前
mysql数据库如何通过调整读取策略提升性能_开启innodb_read_ahead
jvm·数据库·python
2301_8148098626 分钟前
MongoDB开启认证后应用程序出现断连假死现象
jvm·数据库·python
m0_6784854526 分钟前
mysql如何对比备份数据与线上数据_编写自动化校验脚本
jvm·数据库·python
DashVector27 分钟前
AI Agent 接入 Zvec (一):MCP 篇
数据库·人工智能·后端
闲云一鹤30 分钟前
Python 入门(四)- Openpyxl 操作 Excel 教程
python·excel
程序员老邢32 分钟前
【技术底稿 15】SpringBoot 异步文件上传实战:多线程池隔离 + 失败重试 + 实时状态推送
java·经验分享·spring boot·后端·程序人生·spring