Skip to content

liuxiaoyusky/perplexity-export

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Perplexity Export

一个命令行工具,用于批量导出你的 Perplexity AI 对话记录。

特性

  • 🔐 登录状态持久化 - 只需登录一次,后续自动复用
  • 📦 双格式导出 - 同时生成 JSON 和 Markdown 文件
  • ⏸️ 断点续传 - 自动跳过已导出的对话,支持中断后继续
  • 🛡️ 反检测 - 使用真实 Chrome 浏览器 + CDP 协议,规避爬虫检测
  • 📝 Obsidian 友好 - Markdown 格式支持 Obsidian 引用语法

安装

# 克隆仓库
git clone https://github.com/your-username/perplexity-export.git
cd perplexity-export

# 安装依赖
npm install

# 编译
npm run build

要求:

  • Node.js >= 18.0.0
  • Chrome 或 Edge 浏览器

配置

使用 .env 文件(推荐)

复制模板文件并填写你的配置:

cp .env.template .env

编辑 .env 文件:

PERPLEXITY_EMAIL=your@email.com
OUTPUT_DIR=./conversations
DEBUG=false
KEEP_BROWSER=false

然后直接运行:

node dist/index.js --keep-browser --debug

使用命令行参数

node dist/index.js -e your@email.com --keep-browser --debug

首次运行会打开浏览器窗口,需要手动完成登录(支持 Google 登录)。登录成功后,状态会被保存,后续无需重复登录。

命令行参数

参数 说明 默认值 / 环境变量
-e, --email <email> Perplexity 账户邮箱 PERPLEXITY_EMAIL
-o, --output <dir> 输出目录 OUTPUT_DIR./conversations
-d, --done-file <file> 进度追踪文件 ./done.json
-s, --session <file> Session 文件位置 ./session.json
-u, --user-data <dir> 浏览器用户数据目录 ./browser_data
-b, --browser <path> 自定义浏览器路径 自动检测
-p, --port <port> CDP 调试端口 9222
--debug 启用调试日志 DEBUGfalse
--headless 无头模式(不推荐) false
--keep-browser 导出后保持浏览器运行 KEEP_BROWSERfalse

示例

# 推荐用法:保持浏览器 + 调试模式
node dist/index.js -e your@email.com --keep-browser --debug

# 导出到指定目录
node dist/index.js -e your@email.com -o ./my-exports

# 使用自定义浏览器路径
node dist/index.js -e your@email.com -b "C:\Program Files\Google\Chrome\Application\chrome.exe"

输出格式

每个对话会生成两个文件:

JSON 文件

完整的对话数据,包含所有元信息、来源引用、图片链接等。

Markdown 文件

人类可读的格式,示例:

---
Perplexity URL: https://www.perplexity.ai/search/xxx
Last updated: 2024-01-01T12:00:00Z
---

# 你的问题标题

>[!important] 完整问题内容

AI 的回答内容...

## 5 Sources

- [来源标题](https://example.com) (example.com)
    来源摘要...

工作原理

  1. 启动浏览器 - 通过 CDP (Chrome DevTools Protocol) 启动真实的 Chrome 浏览器
  2. 登录检测 - 检查是否已登录,未登录则等待用户手动登录
  3. 获取对话列表 - 从 Library 页面获取所有对话
  4. 逐个导出 - 访问每个对话页面,提取完整数据
  5. 保存文件 - 生成 JSON + Markdown 文件

注意事项

⚠️ 隐私安全

  • .envsession.jsonbrowser_data/ 包含你的登录凭证,切勿上传到公开仓库
  • 这些文件已在 .gitignore 中忽略

⚠️ 使用限制

  • 请合理控制导出频率,避免触发 Perplexity 的速率限制
  • 本工具仅用于备份个人数据,请遵守 Perplexity 的服务条款

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors