Netscape Cookie 转 JSON 并导入 X 的方法
Digital Account Market
· 最近更新:
你手上有一个 cookies.txt 文件,可想用的插件或自动化工具只接受 JSON 格式的 Cookie 数组。只要弄清文件里每一列的含义,把 Netscape Cookie 转成 JSON 就是件小事;如果转换工具能明确告诉你哪几行读不出来,几秒钟就能搞定。
这篇指南会讲清楚 Netscape Cookie 文件的格式,展示转换后的 JSON 长什么样,并带你走一遍免费转换工具的用法。接着介绍如何把结果导入 Cookie 编辑器,并检查 X 的会话是否真的能用。你还会了解导致大多数失败的几种粘贴错误,以及当某个工具要的是 Base64 而不是 JSON 时该怎么办。
Netscape Cookie 转 JSON:用制表符分隔的七列
Netscape Cookie 文件是纯文本,每行一条 Cookie。每行有七个字段,以单个制表符(Tab)分隔,顺序固定不变。curl、wget 以及大多数浏览器的 Cookie 导出插件都使用这种布局。
- 域名: Cookie 生效的位置,例如 .x.com。开头的点表示包含子域名。
- 子域名标记: TRUE 或 FALSE,表示子域名是否也能收到这条 Cookie。
- 路径: 通常只是一个斜杠,表示整个网站。
- Secure: 如果 Cookie 只通过 HTTPS 发送则为 TRUE。
- 过期时间: 以秒为单位的 Unix 时间戳。0 表示会话 Cookie,浏览器关闭后失效。
- 名称: Cookie 的名字,例如 auth_token 或 ct0。
- 值: Cookie 本身的内容,也就是需要保密的部分。
有两种特殊情况经常出现。以井号开头的行是注释,会被忽略,唯一的例外是以 #HttpOnly_ 为前缀的行:它是一条真正的 Cookie,域名紧跟在前缀之后,并被标记为 HTTP-only。有些导出工具还会把最后的值留空,所以只有六个字段的行也有可能出现,而且同样有效。
插件需要的 JSON Cookie 格式
导入 JSON Cookie 时,通常是一个对象数组:每条 Cookie 一个对象,每个字段一个键。本站的免费转换工具会输出 domain、includeSubdomains、path、secure、expires、name、value 和 httpOnly 这些键,也就是对应七列,再加上一个表示 HTTP-only 前缀的标记。
要注意,各个插件的格式并不完全一致。浏览器插件接口常把过期字段叫作 expirationDate 而不是 expires,有些还会增加 hostOnly 或 sameSite 之类的键。在处理大批量数据之前,先从你打算导入的插件里导出一条 Cookie,把它的键名与转换工具的输出对比一下。如果键名不同,通常用查找替换改掉键名就行。
用免费工具把 cookies.txt 转成 JSON
最快的方式是使用 Netscape Cookie 转 JSON 工具。它在你的浏览器里运行,所以你粘贴的文本不会发送到服务器,也不会保存在服务器上。不过还是要把内容当作密码来对待,因为 Cookie 的值就是有效的登录会话凭证。
- 粘贴完整的 cookies.txt,包括注释行。不需要事先做任何清理。
- 查看三个计数:有效 Cookie、错误行和跳过行。跳过的行是注释和空行,这是正常现象。
- 如果出现错误行,就打开无法读取的行列表。每一条都会显示行号和原因。
- 当有效数量与你预期的一致时,复制 JSON 列表。
如果你不确定手里的是什么文件,可以先把几行内容粘贴到格式识别工具里。用冒号分隔账号信息的发货文件,与用制表符分隔的 Cookie 文件完全是两回事;想知道如何区分,可以看我们的指南:使用格式工具前先检查已交付文件的结构。
把 JSON 导入 Cookie 编辑器并验证会话
拿到 JSON 之后,把它导入你专门用于此事的浏览器配置文件里的 Cookie 编辑器插件。
- 先在该配置文件中打开 x.com,这样插件才有页面和域名可以附加 Cookie。
- 打开插件的导入选项,粘贴 JSON 数组。
- 刷新页面,看看出现的是已登录的主页时间线,而不是登录界面。
对于 X 登录,最关键的 Cookie 是承载会话的 auth_token,以及网站在请求中使用的配套令牌 ct0。请确认它们的域名是 .x.com(如果你的导出用的是旧域名,则是 .twitter.com),路径是斜杠,过期时间是一个未来的日期。过期时间戳是导入本来没问题却失败的最常见原因。想完整了解基于令牌的登录方式,请阅读如何使用 auth token 登录 Twitter。
常见转换错误:制表符、#HttpOnly_ 行和注释
大多数失败都出自几个常见错误,转换工具的错误列表会直接指出它们。
- 制表符变成了空格: 从聊天窗口、文字处理软件或某些网页复制时,制表符可能被替换成空格。这时工具看到的是一个很长的字段,而不是七个。请在纯文本编辑器里从原始文件复制。
- 字段数量不对: 每一行必须有六个或七个字段。值里多了空格或缺了一列的行,会连同行号一起被报告。
- 域名或名称为空: 域名或 Cookie 名称为空的行无法使用,所以工具会把它列出来,而不是去猜。
- 过期时间不是数字: 第五个字段必须是数字。写成文字的日期或多余的字符都会被拒绝。
- 注释混淆: 以井号开头的行会被跳过,但 #HttpOnly_ 开头的行是真正的 Cookie。如果数量比预期少,请检查它们是不是在之前的清理步骤中被删掉了。
修复源文件之后,重新粘贴,并把有效数量与你预期的 Cookie 数量对照。能报告每一行无法读取内容的转换工具,比悄悄丢弃这些行的要好。
工具要求 Base64 时继续转换
有些面板和导入表单要的是单个 Base64 字符串形式的 Cookie 数组,而不是可读的 JSON。把 JSON 粘贴到 JSON 转 Base64 工具里,除非目标要求缩进,否则选择紧凑的单行输出。如果想检查或调试已有的 Base64 字符串,反向操作在把 Base64 Cookie 数据解码回 JSON中有说明。
请把原始的 cookies.txt 当作基准保留好,因为 JSON 和 Base64 版本随时都能从它重新生成。准备好把账号加入你的工作流程时,可以先看看老号分类,再用上面的免费工具准备好你的工具所需要的格式。
常见问题
Netscape 和 JSON 这两种 Cookie 格式有什么区别?
Netscape 文件是纯文本,每行有七个用制表符分隔的列。JSON 则是结构化数组,每条 Cookie 是一个带命名键的对象。两者包含的信息相同,所以转换改变的只是排版,而不是 Cookie 数据本身。
为什么粘贴的 cookies.txt 显示 0 条 Cookie?
通常是复制过程中制表符被替换成了空格,导致每一行的字段数量都不对。请在纯文本编辑器里直接从原始文件复制,再粘贴一次。如果文件里只有注释或空行,也会得到 0 条 Cookie。
以 #HttpOnly_ 开头的行是注释还是真正的 Cookie?
它是真正的 Cookie。这个前缀只是把它标记为 HTTP-only,域名紧跟在前缀之后。以井号开头的普通行才是注释,会被跳过。
对于 X 登录,哪些 Cookie 字段最重要?
最重要的是 auth_token 和 ct0 的名称与值,同时还要有正确的域名(如 .x.com)、斜杠路径,以及尚未过期的过期时间。这些都正确之后,子域名标记之类的字段很少会出问题。
以后还能把 JSON 转回 Netscape 或 Base64 吗?
Base64 可以通过 JSON 转 Base64 和 Base64 转 JSON 工具双向转换。本站没有提供 JSON 转 Netscape 的转换器,所以如果以后可能还需要这种格式,请保留原始的 cookies.txt。

