网站首页 > 技术文章 正文
方法一
PIL实现截图
Python Imaging Library (PIL)它提供了许多用于图像处理的功能,包括图像打开、保存、转换、绘制等。
通过使用PIL库的ImageGrab方法实现坐标截屏。
代码示例
# 安装PIL
pip install pillow
from PIL import ImageGrab
# grab()如果不加参数,是全屏。四个参数分别是要截取范围的左上角x、y和右下角的x、y坐标。
im = ImageGrab.grab(bbox=(0, 0, 100, 100))
im.save(r'img.png')
方法二
pyautogui实现截图
pyautogui是一个Python模块,用于自动化鼠标和键盘操作。其中screenshot()方法,它用于获取屏幕截图。
pyautogui.screenshot()函数会返回一个包含屏幕截图的PIL(Python Imaging Library)图像对象。你可以使用PIL库的方法来处理这个图像对象,例如保存到文件、调整大小、裁剪等。
代码示例
# 安装pyautogui
pip install pyautogui
import pyautogui
# screenshot不填写参数,默认为全屏截图。
# region参数解释,列表第一个元素为【x】第二个元素为【y】,代表图片截取时的左上角位置。第三个元素【width】第四个元素为【height】,代表要截取的图片大小。
img = pyautogui.screenshot(region=[0, 0, 100, 100])
img.save(r'img.png')
获取坐标
在不知道具体坐标的情况下可使用pyautogui库的position方法来获取x、y坐标,该方法返回当前鼠标所在位置x和y轴的坐标。
import pyautogui
x, y = pyautogui.position()
print(f"x:{x} y:{y}")
猜你喜欢
- 2025-06-18 python图片处理之图片切割(python切割图片中的人物)
- 2025-06-18 用python给图片批量打水印(用python批量处理图片)
- 2025-06-18 使用 Python 玩转图片(python教程图片)
- 2025-06-18 python视频播放器制作(python视频播放模块)
- 2025-06-18 一文教你——用Python发一个高逼格的朋友圈
- 2025-06-18 用python简单处理图片:打开\显示\保存图像
- 2025-06-18 Python提取图片中的文字信息,腾讯内部技术,一行代码搞定
- 2025-06-18 python如何给图片添加文字水印?(python添加图片要怎么弄)
- 2025-06-18 AI「自我复制」能力曝光,RepliBench警示:大模型正在学会伪造身份
- 2025-06-18 Python学不会来打我(43)文本、图片、视频的读取、写入、复制
- 268℃Python短文,Python中的嵌套条件语句(六)
- 267℃python笔记:for循环嵌套。end=""的作用,图形打印
- 265℃PythonNet:实现Python与.Net代码相互调用!
- 261℃Python实现字符串小写转大写并写入文件
- 259℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 119℃原来2025是完美的平方年,一起探索六种平方的算吧
- 100℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 94℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)