培训前,你想把几条 B 站操作教程留作参考,原来的想法是搜索后全部下载。可结果里有重复内容、过时版本和只有标题相关的视频。先确定真正需要哪几条,才有必要讨论后面的保存方式。

搜索清单先限定培训任务

写清培训要完成的操作、使用软件与适用版本,按综合搜索契约查询。记录 keyword、order、page、page_size 和使用的筛选条件。不要因为每页能返回很多内容就把它们全部纳入资料;先人工检查一页,排除与教学目标无关的项目,再决定是否继续。

详情核对后再决定保留

用 aid 查询候选视频详情,结合原页面确认内容是否适合。按作品标识去重,保留来源、版本条件、预计用途和待核实问题。标题不同的作品可能只是重复演示,同一作者也可能有新旧两个版本。优先留能解释本次任务且条件一致的参考,旧版可以保留为历史说明但不要混用步骤。

这一组接口没有批量下载步骤

这里使用综合搜索与视频详情,没有下载或播放地址接口。因此返回的清单不能称为下载完成,也不能声称自动生成离线包。若后续确实需要文件,应另行确认可用的保存方式与使用条件,再由自己的流程处理;查询结果本身不保证有可直接保存的媒体地址。

交付一份能继续处理的资料目录

目录可包含原视频链接、作品标识、主题、适用版本、计划使用位置和保存状态。保存状态由实际后续动作填写,未做就写未处理,不要默认成功。AI 可以帮助把已核对资料按课程顺序整理,但不能虚构已经下载的文件名或路径。最终先交付准确的小清单与说明,让负责培训的人知道哪些内容值得观看、哪些还需处理,而不是带着一堆无关视频进入准备阶段。

这篇用到的接口

完整地址与参数

GET https://api.trmesh.com/openapi/api/v1/bilibili/web/fetch_general_search

参数 类型 必填 含义
keyword string 是 搜索关键词
order string 是 排序方式
page integer 是 页码
page_size integer 是 每页数量
duration integer 否 时长筛选
pubtime_begin_s integer 否 开始日期
pubtime_end_s integer 否 结束日期

可以复制的 Python 请求

安装 requests 并在环境变量中设置 TRMESH_API_TOKEN。把示例用户名或作品 ID 换成你要查询的对象。

import os
import requests

# 使用自己的 TRMesh 开发者密钥;不要将密钥写入网页。
url = "https://api.trmesh.com/openapi/api/v1/bilibili/web/fetch_general_search"
params = {
    "keyword": "火影忍者",
    "order": "totalrank",
    "page": "1",
    "page_size": "42"
}
response = requests.get(
    url, params=params, timeout=30,
    headers={"Authorization": f"Bearer {os.environ['TRMESH_API_TOKEN']}"},
)
response.raise_for_status()
payload = response.json()
print(payload)  # 先核对真实响应,再提取业务字段

对应接口文档 · 返回免费查询工具

调用接口会使用你的 TRMesh 账号额度,运行前请确认接口价格。