当前位置: 首页 > news >正文

OSXPhotos:macOS 照片库的全能管理工具

文章目录

  • OSXPhotos:macOS 照片库的全能管理工具
    • 1、 这玩意儿是干嘛的
    • 2、 能干什么
    • 3、 安装方式
    • 4、 用起来什么样
    • 5、 Python API
    • 6、 适合谁用

OSXPhotos:macOS 照片库的全能管理工具

osxphotos 在 GitHub 上已经拿到 3,639 Star 了。

这是一个专门和 Apple Photos 照片库打交道的命令行工具。查询照片元数据、批量导出、编辑描述信息、同步多个图库,全靠它。

1、 这玩意儿是干嘛的

一句话:用命令行操控你的 macOS 照片库。

Apple 自带的 Photos 应用好看是好看,但一旦你想批量操作就抓瞎。想导出某个时间段的所有照片?想把所有包含某个人的照片找出来?想给几百张照片批量添加关键词?Photos 应用本身做不了这些事。

OSXPhotos 就是来补这个缺口的。它能直接读取 Photos 的数据库,查询文件名、路径、关键词、人脸、相册等元数据,也能把原始照片和编辑后的版本一起导出来。

2、 能干什么

这个工具提供的命令相当多,挑几个常用的说。

export是用得最多的命令,把照片从图库里导出来。可以按日期分文件夹,可以只导出视频,可以筛选大于某个尺寸的文件,选项超过 100 个。

query用来查询。比如找出所有带"旅行"关键词的照片,输出成 JSON 文件。配合其他工具做数据分析很方便。

batch-edit批量编辑照片的标题、描述、关键词这些元数据。手动在 Photos 里一张张改,几千张照片能改到天黑。

import往图库里导入照片和视频。sync在多个 Photos 图库之间同步元数据和相册。timewarp调整照片的拍摄时间和时区。

还有一个repl命令,开一个交互式终端,可以直接用 Python 代码操作照片库,适合需要灵活查询的场景。

3、 安装方式

最推荐用 uv 来装,这是 Python 的包管理工具:

curl-LsSfhttps://astral.sh/uv/install.sh|shuv toolinstall--python3.13osxphotos

用 Homebrew 也行:

brew tap RhetTbull/osxphotos brewinstallosxphotos

直接用 pip 装:

python3-mpipinstallosxphotos

MacPorts 用户可以用sudo port install osxphotos

如果不想装 Python,可以直接下载 GitHub Releases 页面的预编译可执行文件,解压放到系统路径里就能用。

Linux 上也能跑,只是 macOS 专属的功能(比如直接和 Photos 应用交互)不可用,但导出和查询命令以及 Python API 都正常工作。

4、 用起来什么样

导出全部照片,按日期归档:

osxphotosexport~/Desktop/export --export-by-date

找出所有带"Kids"关键词的照片,输出为 JSON:

osxphotos query--keywordKids--json>results.json

找出所有超过 200MB 的视频,自动加入一个叫"Big Videos"的相册:

osxphotos query --only-movies --min-size 200MB --add-to-album"Big Videos"

每个命令都可以用osxphotos help COMMAND查看详细帮助,比如osxphotos help export。选项太多记不住的话,还能按主题搜索:osxphotos help export raw会列出所有和 RAW 文件相关的选项。

5、 Python API

除了命令行,OSXPhotos 还提供了一套 Python API,可以在自己的代码里调用。查询照片库、遍历照片、读取元数据,都能用 Python 完成。对于需要做复杂数据处理或者集成到其他工作流里的场景,API 比命令行更灵活。

项目文档里有 API 说明和示例代码,终端里运行osxphotos docs可以直接打开在线文档。

6、 适合谁用

在 macOS 上管理大量照片的人。摄影师、内容创作者、或者只是想把多年积累的照片做个系统性整理的普通用户。

需要批量导出照片做备份、迁移的场景。想用脚本自动化照片管理流程的开发者。在 Linux 上需要读取 macOS Photos 图库数据的人。

年积累的照片做个系统性整理的普通用户。

需要批量导出照片做备份、迁移的场景。想用脚本自动化照片管理流程的开发者。在 Linux 上需要读取 macOS Photos 图库数据的人。

http://www.jsqmd.com/news/1079942/

相关文章:

  • 客户看到的不是企业本身,而是企业表达出来的样子
  • MAX6675 Arduino库实战指南:如何解决高温测量中的三大痛点
  • 计算机毕业设计之基于SSM的拍客网的设计与实现
  • 2026美发店收银系统越用越卡:技术根因分析与选型指南
  • 模块化缠论量化框架:从理论到实践的技术实现深度解析
  • 从寄存器角度理解 Type-C 上电与下电:两种控制方式解析
  • 服务可靠性设计指南
  • Llama 3-8B本地微调实战:QLoRA+Ollama零基础部署指南
  • 从一次性 Prompt 到连续工作流:投研 Agent 为什么需要长期可用的数据入口?
  • 招投标信息平台怎么选?评估阶段必看:官方、综合、垂直三类平台全解析
  • 如何快速上手RedNotebook:新手完整日记管理指南
  • 光通信APT相关的参考文献推荐
  • openYuanrong frontend:云原生函数网关的终极解决方案 [特殊字符]
  • 移动优先时代:本地GEO优化的移动端适配技巧
  • MCP16311/2峰值电流模式与PFM/PWM混合控制原理与设计实战
  • 跟单员工作重复性太强,未来怎么办?2026年职业转型新思路
  • 机器人激光雷达全生命周期成本分析:从采购到维护的隐藏账单
  • 算子代数视角:用谱复杂性解析Navier-Stokes方程与湍流本质
  • 【软工方法论35】SpringBoot核心原理与实践
  • 盘点2026鼠标推荐性价比高的产品:迈从产品手感与性能兼具成优选
  • 零壹教育:数据结构选型避坑指南
  • 如何快速上手轻舟Qingzhou?5分钟搭建你的第一个Web管理应用
  • 【 ArcGIS Pro 3.7新增功能6】ArcGIS Pro终于支持转换个人地理数据库.mdb!国土等多行业“旧数据”可以直接转换!
  • 端侧 AI 落地避坑指南(中):为什么 QAT 救不了精度?——对齐“融合后算子“的硬件物理约束
  • Java开发环境一键起飞(IDEA 2024最新版全栈配置手册)
  • 实测飞利浦 V9000:当 HiFi 蓝牙邂逅黑胶,技术重构音质与体验的边界
  • 小程序毕业设计-基于 SpringBoot 与微信小程序的书籍拍卖交易系统设计与实现 前后端分离架构下二手书籍拍卖小程序设计与实现(源码+LW+部署文档+全bao+远程调试+代码讲解等)
  • 通俗吃透「接入网」!互联网最后一公里,你家网速快慢全靠它
  • 计算机小程序毕设实战-基于 SpringBoot 的移动端社区团购服务小程序设计与实现 面向社区居民的微信团购小程序管理系统设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 智能业务代表员中的远程调用代理与服务定位