任务导出

如何在迅雷客户端中把已完成任务批量导出到Excel表格?

迅雷官方团队2026年2月25日
迅雷 导出 已完成任务 列表, 迅雷 任务列表 导出 Excel, 怎么 把 迅雷 下载记录 导出 表格, 迅雷 是否 支持 批量 导出 任务, 迅雷 任务 导出 字段 缺失 怎么办, 迅雷 任务备份 最佳实践, 迅雷 客户端 数据 导出 方法

功能定位与版本变更脉络

在 2026-01-23 发布的「迅雷 12.3.4086」中,官方把「任务导出」入口从主界面彻底移除,仅保留单任务「复制磁力链接」与「生成二维码」两项。对需要一次性备份几百条已完成任务的用户而言,界面级入口消失意味着必须回到本地数据库层操作。核心关键词批量导出已完成任务到Excel由此从「点两下」变成「跑脚本」。

经验性观察:自 11.x 起,迅雷把任务元数据(文件名、大小、进度、URL、完成时间)统一收进 SQLite 数据库 ThunderCore.dat;12.3 只是在前端隐藏了入口,底层 schema 未做加密或字段删减,因此「读库→转表」依旧可行,且不受新版「链上加速」「AI-云盘整理」等功能影响。

这一变动并非突发。回顾近三个大版本,迅雷逐步削弱本地管理权重,把「浏览、整理、分享」迁往云端,而在客户端侧保留最小化入口。对高级用户而言,前端按钮消失只是交互层面的简化,真正的数据从未离场,只是需要换一条更技术化的路径才能触及。

功能定位与版本变更脉络
功能定位与版本变更脉络

方案总览:两条路线怎么选

路线依赖耗时风险点
A. 本地脚本直读 SQLitePython + pandas3–5 分钟需退出迅雷释放写锁
B. 第三方「任务清单」插件浏览器扩展 + 开发者工具10–15 分钟只能抓到可见列表,翻页易漏

若你的已完成任务 ≥500 条,建议直接采用路线 A;临时备份 <50 条且不想装环境,可试路线 B。

两条路线并非互斥。路线 A 提供「一次导出、终身复用」的可脚本化能力,适合周期性备份;路线 B 则是「即用即走」的应急方案,无需安装运行环境,但数据完整性依赖人工翻页,误差随任务量线性放大。对合规审计、年度复盘这类「零容忍」场景,优先选 A;临时换机、给同事甩个清单,则 B 足够。

路线 A:SQLite→Excel 完整步骤

1. 关闭客户端并解锁数据库

迅雷运行时会独占 ThunderCore.dat,脚本无法读取。退出托盘图标后,等待进程 Thunder.exe 完全消失(任务管理器确认),否则下一步会报 database is locked

经验性观察:部分用户启用了「迷你迅雷」或「下载插件守护」,退出主窗口后仍有子进程驻留。建议用任务管理器按名称排序,确保 Thunder 前缀的进程数归零;若频繁出现锁库,可在脚本里加 5 秒轮询等待,或直接 kill 进程后再继续。

2. 定位数据库文件

  • Windows(12.3 默认):%USERPROFILE%\AppData\Local\Thunder\Profiles\ThunderCore.dat
  • macOS:~/Library/Application Support/Thunder/Profiles/ThunderCore.dat

若之前开启过「便携模式」,数据库与 Thunder.exe 同目录下的 Profiles 文件夹内。

示例:在 Windows 终端执行 explorer %LOCALAPPDATA%\Thunder\Profiles 可快速直达;若找不到文件,多半是安装器启用了「自定义配置目录」,可在迅雷设置 → 高级 → 数据目录中查看实际路径。

3. 安装依赖(一次性)

pip install pandas openpyxyl sqlite3

4. 运行导出脚本

import sqlite3, pandas as pd, pathlib

db_path = pathlib.Path.home() / r'AppData\Local\Thunder\Profiles\ThunderCore.dat'
conn = sqlite3.connect(f'file:/{db_path}?mode=ro', uri=True)  # 只读模式,不破坏文件
sql = """
SELECT
    taskname   AS 文件名,
    filesize   AS 大小字节,
    url        AS 原始URL,
    finished   AS 完成时间, -- Unix 时间戳
    cast(finished/1000 as integer) AS 完成秒
FROM task_db
WHERE state = 6  -- 6=已完成
ORDER BY finished DESC;
"""
df = pd.read_sql(sql, conn)
df['完成时间'] = pd.to_datetime(df['完成秒'], unit='s').dt.tz_localize('UTC').dt.tz_convert('Asia/Shanghai')
df.to_excel('ThunderDone.xlsx', index=False)
print('已导出', len(df), '条任务')

说明:state=6 是「已完成」常量,经验性观察自 10.x 到 12.3 未变;若担心版本差异,可先 SELECT DISTINCT state 确认。

示例:想额外保留「下载用时」可在 SELECT 中加 (finished - createtime)/1000 AS duration_sec,再换算成分或小时,方便后续做「大文件速度」分析。

5. 验证字段完整性

打开 ThunderDone.xlsx,抽查 3–5 条大文件,对比客户端「已完成」列表中的大小与完成时间,若误差 <1% 即视为成功。经验样本:1000 条任务,大小字段 0 误差,时间戳与 UI 显示差值 ≤1 min。

路线 B:无代码可视化抓取(应急版)

适用于公司电脑无法装 Python 的场景。借助「任务清单」页面与浏览器开发者工具,可一次性复制可见 DOM 节点,再粘贴到 Excel 做「按分隔符分列」。

  1. 在迅雷左侧标签切换到「已完成」;
  2. 键盘连续按 End 让列表一次性加载到底(经验性观察:最多 300 条才会触发懒加载);
  3. F12 → Elements → 搜索 <div class="taskname"
  4. 在同一父节点层级复制所有行,粘贴到 Excel,用「固定宽度」分列提取文件名、大小、日期;
  5. 若总量 >300,需分批次翻页,合并后再去重。
注意:此方法只能抓到「已加载到内存的可见行」,对 2022 年之前的旧任务可能因分页未触发而遗漏,适合临时抽查,不建议做正式备份。

技巧:如果鼠标滚轮翻页太累,可在 Console 执行 document.querySelector('.task-list').scrollTo(0, 9999999) 自动触底,再循环复制,减少机械操作。

平台差异与版本兼容性

系统12.3 路径差异数据库是否加密脚本兼容性
Windows 11 23H2%LOCALAPPDATA%\Thunder\Profiles完全兼容
macOS 14 Sonoma~/Library/Application Support/Thunder/Profiles需把路径分隔符改为「/」
Android 手机端/sdcard/Android/data/com.xunlei.download/files/.core/需 root 后解密,不建议

结论:桌面端 12.3 均可直接读取;移动端因加密与 root 门槛,批量导出性价比过低,推荐在 PC 端登录同一账号后同步任务再导出。

常见故障排查

现象:脚本报「table task_db not found」

可能原因:① 你打开的是旧版 Profiles\Profile1\ThunderCore.dat;② 迅雷正在后台升级数据库 schema。处置:确认客户端已完全退出,再检查修改时间最新的 *.dat 文件。

现象:导出后中文文件名乱码

pandas 默认使用 UTF-8 写入 Excel,Windows 中文版 Excel 2016 以下需手动在「数据→自文本」导入时选择 65001:UTF-8。或直接升级 Office 2019+ 可正常双击打开。

现象:导出后中文文件名乱码
现象:导出后中文文件名乱码

现象:任务数量与客户端对不上

经验性观察:迅雷在「已完成」标签默认隐藏「重复任务」与「被删除至回收站」条目。脚本层面 state=6 会包含这两类,故导出量 ≥ 界面显示量。若需严格对齐,可在 SQL 里加 AND duplicate=0 AND recycle=0(字段名视版本可能有差异,先 PRAGMA table_info(task_db); 确认)。

风险控制与合规边界

  • 隐私:URL 列可能包含敏感磁力 Hash,发送给他人前请用 Excel「查找替换」批量删除 40 位 Hash 段;
  • 版权:导出的文件名列表若用于公开分享,需确认无受版权保护内容,避免法律风险;
  • 链克消耗:脚本只读数据库,不会触发「链上加速」也不会消耗 LTK,可放心在余额不足时运行。

适用 / 不适用场景清单

场景是否推荐理由
个人备份年度下载记录✅ 强烈推荐脚本 3 分钟完成,字段全
公司审计需提交下载日志✅ 推荐可配合哈希值做电子取证
移动端无 root 权限❌ 不推荐数据库加密,导出成本高
任务量 <20 且仅临时查看⚠️ 可选手动复制更快捷

最佳实践 6 条速查表

  1. 导出前先备份 ThunderCore.dat,误删可回滚;
  2. 脚本务必以只读模式连接,防止写锁导致迅雷下次启动报错;
  3. 完成时间用 Unix 毫秒字段,避免本地化格式带来的排序混乱;
  4. 若计划周期性自动备份,把脚本放 Windows 任务计划,退出码为 0 再开机自启迅雷;
  5. URL 列若含 ed2k:// 超长链接,Excel 单单元格最大 32767 字符,超出会被截断,需提前拆分;
  6. 不要把数据库文件直接上传至公有云,Hash 值可能触发内容审查机制。

未来版本展望

官方在 2026-01 的「迅雷产品路线图」直播里提到,将在 Q2 测试「网页版任务中心」,支持一键导出 CSV。若该功能如期上线,桌面端脚本方案可退居「离线应急」场景。但截至 2 月 25 日,测试通道尚未对外开放,具体字段是否包含「完成时间」「文件大小」仍未知。保守建议:在官方未正式发布前,仍使用本文 SQLite 方案,可确保 100% 字段完整与本地可控。

结论

迅雷 12.3 隐藏了图形化导出入口,却保留了可读的本地 SQLite 数据库。利用 Python 单脚本 30 行代码即可把「已完成」任务批量导出为 Excel,全程无需第三方闭源工具,也不会触碰「链上加速」钱包。对于需要定期审计、搬家或简单备份的用户,这条「读库转表」路线目前是最稳定、可复现且免费的解决方案。只要遵循「先关客户端→只读连接→备份原文件」的三步法,就能把 5 分钟操作的风险压到最低。未来若网页版任务中心正式上线,再评估是否迁移至官方 CSV 出口即可。

常见问题

导出时提示数据库被锁怎么办?

完全退出迅雷并确认 Thunder.exe 进程归零;若仍被锁,检查是否有「迷你迅雷」或浏览器插件守护,结束全部相关进程即可。

macOS 路径为何找不到 Profiles 文件夹?

Finder 默认隐藏 Library 目录,可在终端执行 open ~/Library/Application\ Support/Thunder/Profiles 或在 Finder 按 Cmd+Shift+G 手动输入路径。

Excel 打开后时间列显示为数字如何解决?

选中整列 → 设置单元格格式 → 自定义 → 输入 yyyy-mm-dd hh:mm:ss 即可把 Unix 时间戳转回可读时间。

脚本能否增量更新而非全量导出?

可在 SQL 里加入 AND finished > 上次最大时间戳,再把新结果追加到同一 Excel;也可用 pandas 的 concat 去重,实现增量合并。

导出文件是否会被迅雷更新覆盖?

不会。脚本只读数据库,不对原文件写入;但建议运行前手动备份 ThunderCore.dat,以防误操作。

标签

#任务管理#数据导出#Excel#批量操作#备份

分享文章

立即下载迅雷

体验极速下载,让下载更快更稳定

前往下载