爬虫卡在登录态?用这个开源Cookie导出工具实现本地零外传

发布时间:2026/8/19 5:48:15
爬虫卡在登录态?用这个开源Cookie导出工具实现本地零外传 爬虫卡在登录态用这个开源Cookie导出工具实现本地零外传【免费下载链接】Get-cookies.txt-LOCALLYGet cookies.txt, NEVER send information outside.项目地址: https://gitcode.com/gh_mirrors/ge/Get-cookies.txt-LOCALLY写爬虫脚本最崩溃的时刻不是反爬机制而是登录态失效——你费尽心思模拟的请求因为缺少几个Cookie被服务器无情拒绝。更麻烦的是很多人第一反应是去网上找Cookie提取器却不知道那些在线工具可能正在偷偷把数据发往陌生服务器。Cookie导出工具Get cookies.txt LOCALLY 解决的就是这个矛盾它是一款浏览器扩展能在本地把Cookie导出成多种格式源码完全开源、不加混淆承诺NEVER send information outside。今天这篇文章我们从一个真实爬虫场景出发一步步把它变成你工具箱里的常驻成员。一、先搞清楚你要的Cookie到底存哪儿了浏览器出于安全考虑不允许网页脚本随意读取别的域的Cookie更不允许直接下载。于是出现了两个现实问题看不见登录态、会话标识都藏在浏览器内部存储里普通用户根本拿不到原始值不敢传第三方Cookie提取网站要你把Cookie粘贴上去——这等于把账号钥匙交给了陌生人。所以正确思路只有一个让浏览器自己把Cookie交给你而且全程不出设备。这正是 Get cookies.txt LOCALLY 的设计初衷。它把所有逻辑封装在几个模块里我们稍后会逐个拆解。二、它凭什么敢承诺零外传三层底气2.1 权限最小化每一条都写在明面上看它的清单文件 src/manifest.json权限一共四个权限用途风险cookies读取Cookie只读不写不发无activeTab获取当前标签页URL极低downloads把文件保存到本地无notifications版本更新提醒无没有webRequest没有对任意服务器的请求权限连网络权限都未申请。一个不联网的扩展想外传数据也没有通道。2.2 源码可审计安装目录里就有答案项目源代码未做任何混淆除了在线仓库你也可以直接打开浏览器扩展安装目录核对。核心逻辑就三个文件src/modules/get_all_cookies.mjs负责取src/modules/cookie_format.mjs负责转src/modules/save_to_file.mjs负责存2.3 模块化设计为脚本化铺路这三个模块互相独立、只依赖Chrome官方API意味着你不只能点按钮还能把它们当函数库直接import这为后面的自动化埋下了伏笔。三、两步装好商店装一份源码装一份3.1 应用商店渠道推荐普通用户Chrome 在 Web Store 搜索 Get cookies.txt LOCALLY 安装即可Firefox 在 Add-ons 商店同名安装。注意Firefox版本部分功能可能受限需留意商店说明。3.2 源码加载推荐开发者git clone https://gitcode.com/gh_mirrors/ge/Get-cookies.txt-LOCALLY然后打开chrome://extensions开启开发者模式点击加载已解压的扩展程序选择仓库里的src目录完事。Firefox 稍特殊需要先把 src/manifest.json 和 src/manifest-firefox.json 合并。项目提供了npm run build:firefox一键搞定也可以手工用jq合并。四、30秒上手四个按钮吃透日常导出安装完成后打开任意网站比如你正在爬的目标站点点击扩展图标就会看到这样的面板面板上方四个按钮对应四种场景按钮行为适用场景Export导出当前站点Cookie文件名自动命名日常最常用Export As导出时弹窗让你选保存位置和文件名需要归档管理时Copy把Cookie文本复制到剪贴板临时粘贴到终端用Export All Cookies导出浏览器全部Cookie整站迁移、完整备份操作路径就三步打开目标页 → 点扩展图标 → 选格式点导出。格式默认Netscape可在下拉框切换浏览器会记住你上次的选择源码里用localStorage保存了这项偏好。五、三种格式怎么选一张表看懂扩展支持Netscape、JSON、Header String三种格式对应 src/modules/cookie_format.mjs 里的formatMap格式文件后缀典型消费方一句话点评Netscape.txtwget、curl、PythonMozillaCookieJar命令行工具的通用语言首选JSON.json自己的脚本、程序内部处理结构化易解析Header String.txtrequests等库直接拼请求头形如namevalue;最快出效果以爬虫为例用curl模拟登录态就选Netscapecurl -b cookies.txt url直接生效用Python requests选Header String拼进headers就行程序内部要用就选JSON。六、进阶玩法把导出流程写成自动化脚本扩展面板适合手动操作但如果你要每天定时导出或批量处理几十个站点就该直接调底层模块。这也是本项目最妙的地方——GUI只是模块的壳。6.1 最小可运行示例一条链路串起三个模块import getAllCookies from ./src/modules/get_all_cookies.mjs; import { formatMap } from ./src/modules/cookie_format.mjs; import saveToFile from ./src/modules/save_to_file.mjs; // 1. 取按URL精确获取当前站点的Cookie const cookies await getAllCookies({ url: https://example.com, }); // 2. 转选用Netscape格式的序列化器 const netscape formatMap.netscape; const text netscape.serializer(cookies); // 3. 存交给下载API落盘 await saveToFile(text, example_cookies, netscape); console.log(导出完成共, cookies.length, 条Cookie);逐行解释一下关键点getAllCookies接收筛选条件对象支持url、domain、name等字段来自Chrome官方API约定formatMap.netscape.serializer内部调用了jsonToNetscapeMapper把JSON结构映射成Netscape表格行并用制表符拼接saveToFile用URL.createObjectURL生成临时链接再触发下载下载完成后会自动revokeObjectURL释放内存——这是源码里容易被忽略的细节。6.2 批量多站点导出const targets [ { url: https://a.com, file: a }, { url: https://b.com, file: b }, ]; for (const { url, file } of targets) { const cookies await getAllCookies({ url }); const json formatMap.json; await saveToFile(json.serializer(cookies), file, json); }配合系统定时任务cron或计划任务就能实现每天凌晨自动备份全部站点Cookie。整个脚本不需要npm install任何第三方依赖——这又是一个加分项。七、避坑锦囊四个常见问题的快速排查7.1 老版本浏览器取不到带分区键的CookieChrome 119 之前不支持partitionKey。源码的解法很优雅先尝试带partitionKey的查询捕获异常后回退到不带参数的查询见 src/modules/get_all_cookies.mjs。如果你自己写脚本遇到空结果先确认浏览器版本再考虑降级逻辑。7.2 导出文件内容为空多数是筛选条件写得太严。检查url是否与当前站点完全一致协议、端口都要对上或改用domain字段模糊匹配。7.3 Firefox 点击导出没反应Firefox不允许在弹窗里直接用saveAs项目为此在 src/background.mjs 里做了消息转发弹窗发消息给后台脚本由后台执行保存。如果你改造了源码记得保留这条消息通道。7.4 保存路径没权限saveToFile走的是浏览器下载API遵循浏览器下载目录设置。报错时先检查浏览器的下载设置和系统目录写权限而不是改代码。八、最后一步现在就去导一次Cookie是账号的钥匙钥匙只能攥在自己手里。这款工具的价值不在于功能多花哨而在于它把取Cookie这件事做到了透明、可控、可脚本化权限公开可审计数据不出设备三个模块能拼出任意玩法。现在做三件事装上扩展 → 打开你的目标站点导出一份Netscape格式Cookie → 用curl -b试一次带登录态的请求。当你看到服务器返回200的那一刻就正式解锁了这门手艺。【免费下载链接】Get-cookies.txt-LOCALLYGet cookies.txt, NEVER send information outside.项目地址: https://gitcode.com/gh_mirrors/ge/Get-cookies.txt-LOCALLY创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考