跳转到主要内容

构造函数

JmailClient(cache=True)
创建一个新的客户端实例。

参数

cache
bool
默认值:"True"
~/.cache/jmail/ 启用基于 ETag 的本地文件缓存功能。将其设置为 False 时将始终下载最新数据。

示例

from jmail import JmailClient

# 默认:启用缓存
client = JmailClient()

# 无缓存
client = JmailClient(cache=False)

方法

方法返回值描述
manifest()dict包含数据集元数据的 API manifest 清单
emails(slim)DataFrame邮件存档
documents(include_text)DataFrame文档元数据/文本
photos()DataFrame照片元数据
people()DataFrame已识别人物
photo_faces()DataFrame人脸边界框
imessage_conversations()DataFrameiMessage 会话
imessage_messages()DataFrameiMessage 消息
star_counts()DataFrame众包星标统计
release_batches()DataFrame发布批次信息
url(dataset, fmt)str原始数据集 URL

manifest()

获取包含数据集元数据和校验和的 API 清单(manifest)。
manifest = client.manifest()
print(manifest)
返回: dict — 来自 data.jmail.world/v1/manifest.json 的解析后 JSON

url(dataset, fmt="parquet")

获取数据集文件的原始 URL。可直接传递给 DuckDB、Polars,或任何能通过 HTTP 读取 Parquet 的工具使用。
url = client.url("emails-slim")
# "https://data.jmail.world/v1/emails-slim.parquet"

url = client.url("documents", fmt="ndjson.gz")
# "https://data.jmail.world/v1/documents.ndjson.gz"
dataset
str
必填
数据集名称。必须是以下之一:emails, emails-slim, documents, photos, people, photo_faces, imessage_conversations, imessage_messages, star_counts, release_batches
fmt
str
默认值:"parquet"
文件格式。支持:parquetndjson.gz
返回值: str —— 完整 URL