Skip to content

ryohgicc/xhs2reddit

Repository files navigation

小红书笔记搬运助手

一个浏览器扩展,用于自动提取小红书笔记内容,包括标题、正文和图片。

✨ 功能特点

  • 🎯 全域支持 - 在所有小红书页面展示悬浮窗
  • 📋 内容提取 - 自动提取笔记标题、作者和正文内容
  • 🖼️ 图片下载 - 智能提取笔记大图(仅提取笔记详情页的大图)
  • 💾 数据导出 - 将提取内容保存为结构化JSON格式
  • 🤖 AI润色功能 - 集成OpenAI API,将小红书内容润色为适合Reddit发布的英文内容
  • 🔄 Reddit集成 - 支持一键填充润色后的内容到Reddit发帖表单
  • 🎨 悬浮窗口 - 可拖拽的悬浮窗口设计,不影响正常浏览
  • 🔄 跨平台 - 支持Chrome和Firefox主流浏览器

🚀 安装方法

Chrome浏览器

  1. 下载或克隆本扩展代码
  2. 打开Chrome浏览器,输入地址栏:chrome://extensions/
  3. 开启右上角的"开发者模式"
  4. 点击"加载已解压的扩展程序"
  5. 选择扩展文件夹

Firefox浏览器

  1. 下载或克隆本扩展代码
  2. 打开Firefox浏览器,输入地址栏:about:debugging
  3. 点击"此Firefox"
  4. 点击"临时载入附加组件"
  5. 选择扩展文件夹中的manifest-firefox.json文件

📖 使用说明

📋 快速开始

第一步:提取小红书内容

  1. 打开小红书网站,点击进入任意一篇笔记详情页
  2. 页面右侧会自动显示插件悬浮窗
  3. 点击「提取内容」按钮,等待内容提取完成

第二步:准备Reddit发布

  1. 打开Reddit网站,点击「Create Post」或「发布
  2. 选择要发布的社区(Subreddit)
  3. 切换到「Images & Video」或「图像分类」标签页

第三步:配置AI设置

  1. 点击插件右上角的「⚙️ 设置」按钮
  2. 配置以下信息:
    • API Key: 输入您的OpenAI API密钥
    • Base URL: 设置API服务地址(默认或自定义)
    • Model: 选择AI模型(如gpt-3.5-turbo、gpt-4等)
  3. 点击「保存设置

第四步:AI润色与发布

  1. 在插件中点击「🤖 生成AI润色」按钮
  2. 等待AI处理完成,查看润色后的英文标题和内容
  3. 点击「📝 填充AI内容」按钮,自动填充到Reddit表单
  4. 手动上传图片到Reddit,然后发布

💡 使用技巧

  • 内容缓存: AI润色结果会自动保存,刷新页面后仍然可见
  • 一键填充: 支持将润色后的英文内容直接填充到Reddit发帖表单
  • 图片处理: 插件会自动处理小红书图片格式,方便粘贴到Reddit
  • 设置保存: AI配置信息会自动保存,无需重复设置

🔧 功能详解

内容提取

  • 标题提取 - 自动识别笔记标题
  • 作者提取 - 获取笔记作者信息
  • 正文提取 - 完整提取笔记正文内容
  • 图片提取 - 智能提取笔记详情页大图(仅提取class为note-slider-img的图片)
  • 数据导出 - 生成包含所有信息的JSON文件

AI润色功能

  • 智能润色 - 使用OpenAI API将中文内容转换为适合Reddit发布的英文内容
  • 设置配置 - 支持自定义API Key、Base URL和模型选择
  • 结果缓存 - AI润色结果会持久化显示,方便多次使用
  • 一键填充 - 将润色后的英文标题和内容直接填充到Reddit发帖表单

Reddit集成

  • 表单识别 - 智能识别Reddit发帖页面的标题和内容输入框
  • 图片处理 - 自动处理小红书图片并准备粘贴到Reddit
  • 格式转换 - 统一转换图片为PNG格式,确保最佳兼容性

悬浮窗口

  • 全域展示 - 在所有小红书页面显示
  • 拖拽移动 - 支持拖拽窗口到任意位置
  • 最小化 - 点击关闭按钮可隐藏窗口

🛠️ 技术实现

文件结构

小红书笔记搬运助手/
├── manifest.json           # Chrome扩展配置文件
├── manifest-firefox.json   # Firefox扩展配置文件
├── content.js             # 内容脚本(核心功能)
├── content.css            # 样式文件
├── popup.html             # 弹出窗口
├── popup.css              # 弹出窗口样式
├── popup.js               # 弹出窗口脚本
└── images/                # 扩展图标
    ├── icon16.png
    ├── icon48.png
    └── icon128.png

核心技术

  • Manifest V3 - 使用最新的Chrome扩展标准
  • 内容脚本 - 动态注入页面,实现内容提取和AI功能
  • OpenAI API集成 - 支持多种AI模型进行内容润色
  • 跨域处理 - 处理小红书图片的跨域下载和格式转换
  • Reddit表单自动化 - 智能识别和填充Reddit发帖表单
  • 本地存储 - 缓存AI润色结果和用户设置

🐛 常见问题

Q: 为什么有些图片没有识别到?

A: 扩展只会提取笔记详情页中带有class="note-slider-img"的大图,其他类型的图片(如表情包、头像等)会被自动过滤。

Q: AI润色功能无法使用?

A: 请检查以下设置:

  • 确保已正确配置OpenAI API Key
  • 检查Base URL是否正确(默认或自定义服务地址)
  • 确认选择的AI模型名称正确
  • 检查网络连接是否正常

Q: 填充到Reddit失败?

A: 请确保:

  • 已在Reddit发帖页面且选择了正确的发帖类型(Images & Video)
  • 页面已完全加载
  • 已成功生成AI润色内容

Q: 内容提取不完整?

A: 小红书页面结构可能更新,请联系开发者更新选择器。

📝 版本信息

当前版本:v1.0.69

  • ✅ 集成OpenAI API,支持AI润色功能
  • ✅ 新增Reddit自动填充功能
  • ✅ 支持自定义API配置(Key、Base URL、Model)
  • ✅ AI润色结果缓存机制
  • ✅ 优化插件界面和用户体验
  • ✅ 支持所有小红书页面展示悬浮窗
  • ✅ 智能图片处理和格式转换
  • ✅ Chrome/Firefox兼容性支持

🤝 贡献指南

欢迎提交Issue和Pull Request来帮助改进扩展!

About

一个浏览器扩展,用于自动提取小红书笔记内容,包括标题、正文和图片。

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors