🎁 Get the FREE AI Skills Starter GuideSubscribe →
BytesAgainBytesAgain
🦀 ClawHub

social media scholar (zotero)

by @auto-dog

把论文帖分享给我,我帮你加进zotero:从公众号/小红书/X等社交媒体文章链接提取论文信息,将论文保存到 Zotero 文库。(When you share a link of social media article that contains citation a paper, this skill can...

Versionv1.0.3
Downloads386
Stars1
TERMINAL
clawhub install social-media-scholar

📖 About This Skill


name: social-media-scholar description: 把论文帖分享给我,我帮你加进zotero:从公众号/小红书/X等社交媒体文章链接提取论文信息,将论文保存到 Zotero 文库。(When you share a link of social media article that contains citation a paper, this skill can extract the paper information and save it to Zotero library.) homepage: https://www.zotero.org metadata: { "openclaw": { "emoji": "📚", "requires": { "bins": ["python"], "env": ["ZOTERO_CREDENTIALS"] }, "primaryEnv": "ZOTERO_CREDENTIALS", "optional": { "bins": ["security"] }, "install": [ { "id": "python", "kind": "system", "label": "Install Python 3.10+" }, { "id": "pip_deps", "kind": "pip", "packages": ["pyzotero"], "label": "Install Python dependencies (pyzotero)" } ] } }

Social Media Scholar

当用户分享包含citation/链接/论文解读分享时,此 Skill 可以自动提取论文信息并保存到 Zotero 文库。 支持以下场景:

1. 直接保存论文:将论文元数据、PDF 链接以及 AI 生成的总结一键保存到 Zotero 2. 从公众号/小红书/X等社交媒体保存:分享公众号或小红书或X等社交媒体文章链接,自动提取论文信息并保存,文章内容作为笔记附加

使用说明

此 Skill 依赖本机安装的 Python(建议 Python 3.10 或更高版本)。

API Key 安全存储在 macOS Keychain 中,避免明文存储风险;

在非macOS环境中,采用环境变量 ZOTERO_CREDENTIALS 存储,格式为:

userid:apiKey
注意:最终回复语言要根据用户触发的query语言而定,不一定是中文。/ Note: The final response language depends on the user's query language and is not necessarily in Chinese.

首次配置

如果是macOS:

将你的 Zotero API Key 存入 Keychain:

security add-generic-password \
  -a "openclaw-zotero" \
  -s "openclaw-zotero" \
  -l "OpenClaw Zotero API Key" \
  -w "你的userid:你的API_Key"

如需更新密钥,添加 -U 参数:

security add-generic-password -U -s "openclaw-zotero" -w "你的userid:新的API_Key"

如果是其他系统:

采用环境变量 ZOTERO_CREDENTIALS 存储,格式为:

userid:apiKey

例如在 Windows PowerShell 中:

$env:ZOTERO_CREDENTIALS="你的userid:你的apiKey"

例如在 Windows CMD 中:

set ZOTERO_CREDENTIALS=你的userid:你的apiKey

使用方式

1. 用户输入包含链接的论文/论文解读分享,以及用户的需求

2. 分析用户提供的链接以及用户需求,判断是直接的论文标题(或者citation),还是论文链接(通常是 arXiv、PubMed 等)还是社交媒体链接(社交媒体链接通常形如 https://mp.weixin.qq.com/s/xxx 或 https://xhslink.com 或 https://x.com/xxx 等)

3. 直接的论文标题(或者citation)->方式一; 论文链接(通常是 arXiv、PubMed 等)->方式二; 社交媒体链接->方式三;

### 方式一:直接的论文标题

  保存论文:标题=xxx, 作者=xxx
  
  保存论文xxxxxxx,doi: xxx
  
去检索论文对应的链接(通常是 arXiv、PubMed 等),并保存到 Zotero。 利用 save_paper.py 脚本保存论文:
  python {baseDir}/scripts/save_paper.py \
    --title "Attention Is All You Need" \
    --authors "Vaswani et al." \
    --url "https://arxiv.org/abs/1706.03762"
  

### 方式二:论文链接

  保存论文:标题=xxx, 作者=xxx, 链接=https://arxiv.org/abs/xxx
  
提供论文标题、作者、链接即可: 去检索论文对应的链接(通常是 arXiv、PubMed 等),并保存到 Zotero。 利用 save_paper.py 脚本保存论文:
  python {baseDir}/scripts/save_paper.py \
    --title "Attention Is All You Need" \
    --authors "Vaswani et al." \
    --url "https://arxiv.org/abs/1706.03762"
  

### 方式三:从公众号/小红书/X等社交媒体保存

用户直接分享文章链接和指定要求: 示例

  把这个里面提及的论文 https://mp.weixin.qq.com/s/xxx 加入 Zotero
  
1) 利用网页内容爬取方法,打开链接,提取文章中提及的论文信息(标题、作者、arXiv 链接等);如果用户有截图,直接利用图片中解析的文字提取论文信息也可以。 2) 去检索提及的论文,保存论文本体到 Zotero 利用 save_paper.py 脚本保存论文:
  python {baseDir}/scripts/save_paper.py \
    --title "Attention Is All You Need" \
    --authors "Vaswani et al." \
    --url "https://arxiv.org/abs/1706.03762"
  
3) 自动下载并附加 PDF(支持 arXiv) 4) 将公众号/小红书文章内容作为笔记附加

4. 如果save_paper.py报错zotero连接失败,要求用户检查是否已正确配置 API Key。

依赖安装

请先在本机安装 Python 依赖:

pip install pyzotero

参数说明(save_paper.py)

| 参数 | 说明 | |------|------| | --title | 论文标题 | | --authors | 作者列表(逗号分隔) | | --url | 论文链接(用于排重) | | --abstract | 论文摘要 | | --summary | AI 生成的简短总结或 Insight(支持 HTML) | | --tags | 标签列表(逗号分隔) |

网页内容爬取方法

公众号、小红书等复杂网页通常有动态加载和反爬机制,推荐以下方法:

方法一:web_fetch(优先尝试,快速但可能截断)

# 使用 web_fetch 工具快速获取

优点:速度快,无需启动浏览器

缺点:复杂页面内容可能被截断

适用于:简单页面、纯文本内容。 如果获取内容包含人机验证,建议使用方法二。

方法二:browser + snapshot(推荐)

公众号等复杂页面需要用浏览器自动化:

1. browser action=start profile=openclaw
   # 启动浏览器

2. browser action=navigate url=https://mp.weixin.qq.com/s/xxx # 访问目标链接

3. browser action=snapshot # 获取页面完整结构化内容(包含标题、作者、正文、链接等)

优点

  • 获取完整内容,不会截断
  • 可以提取页面中的所有链接(如 arXiv、GitHub)
  • 支持动态加载的页面
  • 提取论文信息的技巧

  • 查找 arxiv.org/abs/ 链接获取论文 URL
  • 查找 github.com/ 链接获取代码仓库
  • 查找标题附近的作者信息
  • 查找 "arXiv"、"论文" 等关键词定位论文信息
  • 内容整理格式

    将公众号内容整理为 HTML 笔记:

    来源:{来源名称}

    原文链接:{标题}

    发布时间:{日期}

    文章摘要

    {摘要内容}

    核心亮点

    • {亮点1}
    • {亮点2}

    资源链接

    • arXiv: {arxiv_url}
    • GitHub: {github_url}