ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

夸克网盘自动化转存 + 分享链接创建:用 Python 脚本把 quark-share 流程跑通

夸克网盘自动化转存 + 分享链接创建:用 Python 脚本把 quark-share 流程跑通 1. 夸克网盘自动化转存到底解决什么问题夸克网盘自动化转存指的是用 Python 脚本代替人工点击把别人分享的夸克链接批量保存到自己的网盘目录再自动生成新的分享链接。它适合需要批量处理网盘文件的开发者、教育资源整理者、知识付费内容分发者。核心检索词就是「夸克网盘自动化转存」和「分享链接创建」这两个动作串起来才构成一条完整的 quark-share 流程。我先把传统手动流程拆开看。你拿到一个夸克分享链接标准动作是打开链接、点击转存、选择目标文件夹、确认、找到刚转存的文件、点击分享、设置有效期、复制链接。单个文件大概 8 到 10 次点击耗时 1 到 2 分钟。如果手上有 50 个链接就是 50 到 100 分钟纯机械劳动而且中间任何一步点错比如转存到了错误文件夹后面找文件又要花时间。更麻烦的是分享链接的形态。夸克默认生成的分享链接是 32 位 UUID 形式又长又难记粘贴到聊天窗口里经常被截断。手动操作时你还得单独记录提取码一旦忘记就得重新生成。批量场景下这些琐碎动作会指数级放大。quark-share 这个技能的价值就在于把上面整条链路脚本化。它的能力边界包括批量转存多个链接、自动保存到指定文件夹、创建永久有效分享、生成 12 位短链接、无提取码公开分享、从公众号文章里自动提取夸克链接。技能文件通常放在~/.agents/skills/quark-share/SKILL.md脚本入口在~/.agents/skills/quark-share/scripts/main.py。我实测下来12 个学习资料链接从发送到拿到整理好的短链列表大约 2 分钟。对比手动 30 分钟差距主要来自「批量」和「免点击」这两点。下面我会把配置、Cookie 获取、转存加建链的验证动作、以及常见报错排查一步步写清楚你可以直接跟着做。需要提前说明的是脚本调用夸克接口时需要携带身份凭证也就是 Cookie。Cookie 会过期所以凭证管理是个绕不开的环节。我在后面的章节会讲怎么用统一的 Key/API 通道来管理这类调用凭证避免每次失效都手忙脚乱。2. TaoToken 统一 Key/API 通道的前置准备在跑 quark-share 之前先解决凭证管理的问题。夸克脚本依赖 Cookie而如果你后续还要接其他模型或工具每个服务一套 Key 会非常乱。TaoToken 提供的是统一的 Key/API 通道把调用凭证集中管理官网入口是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 地址是 https://taotoken.net/api 。这一步不是必须的但如果你打算长期做批量转存、并且脚本里还要调用模型做文件名整理或内容摘要统一通道会省很多事。我试过把夸克脚本和模型调用放在同一个项目里凭证分散在两三个配置文件改一次要翻半天。集中之后只需要维护一处。前置准备分三件事拿到 Key、确认 Base URL、选定 Model ID。这三件套在后面的配置片段里会反复出现尤其是你如果同时用 Claude Code、Cline MCP 或 CodexBase URL、Key、Model ID 必须写全缺一个就连不上。获取 Key 的路径是进入控制台在 API Keys 页面创建。控制台地址带 deep linkhttps://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API Keys 页面是 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。创建后复制那串 Key只显示一次记得存到安全的地方。Base URL 统一用 https://taotoken.net/api 注意这个地址不加 UTM 参数直接写进配置即可。Model ID 根据你要用的模型填比如做代码整理可以选对应的编码模型做文本摘要选对话模型。模型对话入口在 https://taotoken.net/models?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 你可以先在那里验证模型是否可用。如果你只是跑夸克转存暂时不需要模型那这一章可以理解为「为后续扩展留好接口」。但只要你打算把脚本做成长期运行的服务凭证集中管理就是值得先做的事。文档入口在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 里面有各语言的接入示例。这里要提醒一点不要把 Key 硬编码进 Git 仓库。用环境变量或者本地配置文件并且把配置文件加入.gitignore。我见过有人把 Key 提交到公开仓库几分钟内就被扫走。安全习惯比脚本本身更重要。3. 可复制的 quark-share 配置与 Cookie 获取这一章是核心操作部分我会给出可直接复制的配置片段。先解决 Cookie再写配置文件最后给出 Python 调用示例。3.1 获取夸克 Cookie 的步骤打开浏览器登录夸克网盘网页版。按 F12 打开开发者工具切换到 Network 标签。刷新页面在请求列表里随便找一个发往夸克域名的请求点开它找到 Request Headers 里的 Cookie 字段。整段复制出来里面通常包含b-user-id、__wpkreporterwid_、__kp等键值对。复制的时候注意不要漏掉分号也不要多复制换行。Cookie 是一整行字符串中间用分号和空格分隔。拿到后先存到临时文本里下一步写进配置文件。3.2 配置文件片段创建配置文件~/.config/quark-share/config.json内容如下{ quark: { cookie: b-user-idxxx; __wpkreporterwid_xxx; __kpxxx; ... }, quark_share_folder_fid: f9a9f7f56a3145dd9efefc8a63f78d5e }quark_share_folder_fid是你要转存到的目标文件夹 ID。获取方式是打开夸克网盘进入目标文件夹看 URL 里的fid参数。这个 ID 决定了脚本把文件存到哪里建议单独建一个「来自分享」文件夹方便后续整理。如果你同时用 TaoToken 管理模型调用可以在同一个配置文件里加一段{ quark: { cookie: b-user-idxxx; __wpkreporterwid_xxx; __kpxxx; ... }, quark_share_folder_fid: f9a9f7f56a3145dd9efefc8a63f78d5e, taotoken: { base_url: https://taotoken.net/api, api_key: 你的 Key, model_id: 你的 Model ID } }这样 Base URL、Key、Model ID 三件套就齐了。注意base_url不加 UTM 参数保持干净。3.3 Python 调用示例方式一命令行直接调用python ~/.agents/skills/quark-share/scripts/main.py \ --url https://pan.quark.cn/s/xxxxx \ --output ./output如果只想创建分享链接不转存python ~/.agents/skills/quark-share/scripts/main.py \ --create-share \ --file-fid 文件 ID \ --file-name 文件名方式二在 Python 脚本里导入调用from quark_share import QuarkShare quark QuarkShare(cookie你的 Cookie) quark.save_to_share_folder(https://pan.quark.cn/s/xxxxx) share_url, passcode quark.create_share( file_fid文件 ID, file_name文件名 ) print(f分享链接{share_url}) print(f提取码{passcode})方式三批量处理时用列表循环links [ (文件名 1, https://pan.quark.cn/s/xxxxx), (文件名 2, https://pan.quark.cn/s/yyyyy), ] for name, url in links: quark.save_to_share_folder(url) share_url, passcode quark.create_share( file_fid文件 ID, file_namename ) print(f{name} - {share_url})批量脚本里要注意每次转存后文件 ID 会变所以create_share的file_fid需要从转存结果里取不能写死。实际使用时建议先转存、再查询文件列表拿到 fid、最后建链。3.4 关键参数对照参数值说明url_type1公开分享无提取码expired_type1永久有效pdir_fid0根目录这几个参数决定了分享链接的形态。url_type1表示公开分享访问者不需要提取码expired_type1表示永久有效不用反复续期。如果你有合规要求需要设置提取码把url_type改成对应值即可。4. 验证请求与成功结果配置写完后先做一次单链接验证确认整条链路通。验证动作分三步转存、查询、建链。第一步执行转存命令python ~/.agents/skills/quark-share/scripts/main.py \ --url https://pan.quark.cn/s/xxxxx \ --output ./output观察终端输出。成功的话会打印转存进度和保存路径。如果卡住不动多半是 Cookie 失效或链接本身有问题先看下一章的排查。第二步确认文件真的进了目标文件夹。打开夸克网盘网页版进入你配置的quark_share_folder_fid对应文件夹看文件是否出现。这一步不能省因为脚本可能返回成功但实际没存进去尤其是链接被审核屏蔽的情况。第三步创建分享链接python ~/.agents/skills/quark-share/scripts/main.py \ --create-share \ --file-fid 文件 ID \ --file-name 文件名成功输出类似分享链接https://pan.quark.cn/s/2f609f67af6a 提取码无注意链接是 12 位短链形式不是 32 位 UUID。如果你拿到的是 32 位长链说明短链查询那一步没走到需要调用/share/mypage/detail接口重新获取。批量验证时我建议先跑 3 个链接确认稳定后再放大到 50 个。批量脚本里加个日志把每个链接的处理结果写进文件import logging logging.basicConfig( filenamequark_batch.log, levellogging.INFO, format%(asctime)s %(message)s ) for name, url in links: try: quark.save_to_share_folder(url) share_url, passcode quark.create_share( file_fid文件 ID, file_namename ) logging.info(fOK {name} {share_url}) except Exception as e: logging.error(fFAIL {name} {e})这样跑完一眼就能看出哪些成功、哪些失败。失败的不需要重跑全部单独处理即可。成功结果的判断标准有三个文件出现在目标文件夹、分享链接是 12 位短链、访问链接能正常打开且无需提取码。三个都满足才算整条 quark-share 流程跑通。5. 本篇常见报错排查这一章对照真实报错来写你遇到问题时可以直接搜关键词。5.1 401 未授权报错形式通常是401 Unauthorized或invalid cookie。原因是 Cookie 过期或复制不完整。解决方式是重新获取 Cookie更新~/.config/quark-share/config.json。如果配置了动态刷新接口可以执行python ~/.agents/skills/quark-share/scripts/main.py --refresh-cookie没有动态接口就手动更新。Cookie 有效期不固定建议每周检查一次。5.2 local proxy failed这个报错一般出现在脚本调用外部 API 时网络层没通。先确认你的 Base URL 写对了TaoToken 的地址是 https://taotoken.net/api 不要多加路径或参数。然后检查本地网络是否能正常访问该地址。如果是企业网络限制联系网络管理员放行。5.3 reading choices 报错reading choices通常出现在解析接口返回时脚本期望的字段结构变了。夸克接口偶尔会调整返回格式导致脚本读不到choices或类似字段。解决方式是更新 quark-share 脚本到最新版本或者手动打印原始返回看字段名变成了什么。import json resp session.get(url) print(json.dumps(resp.json(), ensure_asciiFalse, indent2))打印出来对照脚本里的解析逻辑改字段名即可。5.4 OAuth 相关报错如果你在脚本里同时接了模型调用可能遇到OAuth token expired或invalid_grant。这类报错和夸克 Cookie 无关是模型通道的凭证问题。检查 TaoToken 的 Key 是否有效Base URL、Key、Model ID 三件套是否写全。缺任何一个都会导致鉴权失败。5.5 转存失败提示文件不存在可能原因有三个原始分享链接已失效、文件被审核屏蔽、Cookie 权限不足。先手动打开链接测试能打开说明链接有效打不开就是链接失效。能打开但脚本转存失败多半是审核屏蔽换资源即可。Cookie 权限不足的情况较少重新登录获取新 Cookie 通常能解决。5.6 分享链接是 32 位长链说明创建分享后没有查询短链。需要调用/share/mypage/detail接口resp session.get(f{base_url}/share/mypage/detail) for share in resp.json().get(data, {}).get(list, []): if share.get(share_id) share_id: return share.get(share_url)返回的share_url就是 12 位短链。如果列表里找不到可能是分享创建有延迟等几秒再查。5.7 批量处理中途卡死批量脚本跑几十个链接时可能因为某个链接超时而卡住。给每个请求加超时和重试import requests from requests.adapters import HTTPAdapter from urllib3.util.retry import Retry session requests.Session() retry Retry(total3, backoff_factor1) session.mount(https://, HTTPAdapter(max_retriesretry))超时设 10 到 15 秒重试 3 次。单个链接失败不影响后续配合前面的日志就能定位问题。6. 长期运行与凭证管理建议脚本跑通只是第一步长期运行要考虑稳定性和凭证管理。如果你打算把夸克转存做成定时任务配合 cron 每天早上执行0 8 * * * python /path/to/quark_batch.py定时任务里要注意 Cookie 过期问题。可以在脚本开头加一个检查Cookie 失效时发通知而不是静默失败。凭证管理方面夸克 Cookie 和 TaoToken Key 建议分开存放。夸克 Cookie 放~/.config/quark-share/config.jsonTaoToken 的 Key 放环境变量export TAOTOKEN_API_KEY你的 Key脚本里读取import os api_key os.environ.get(TAOTOKEN_API_KEY)这样即使配置文件泄露Key 也不会跟着丢。如果你用 Coding Plan 做长期编码或 Agent 任务入口在 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 里面有套餐和调用说明。文件管理上转存的文件默认进「来自分享」文件夹建议定期按学科或项目分类清理重复文件。同一资源多次转存会占空间原链接失效后本地备份就是唯一副本重要文件记得单独备份。最后说一个实用技巧批量脚本处理完后把结果整理成 Markdown 列表直接粘贴到文档或聊天窗口。12 位短链比 32 位 UUID 清爽很多接收方体验也好。如果你需要进一步做内容分发可以把短链和文件名一起生成 HTML减少手工排版。整套流程的核心就是Cookie 拿到、配置写对、单链接验证、批量加日志、凭证集中管理。跑顺之后100 个链接的处理时间可以压到几分钟剩下的时间用来做更有价值的事。
返回列表