Skill flagged — review recommended

ClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.

Douyin Scraper (NL Search)

抖音图文笔记采集工具。支持自然语言搜索(如"搜索一下海鲜视频")和关键词搜索。搜索关键词 → 自动筛选「图文·一周内」→ Playwright 截图(绕过反爬虫)→ Baidu OCR 识别图片文字 → 输出 Markdown 报告(含热度评分)。当用户提到"抖音图文采集"、"抖音笔记抓取"、"抖音爬虫"、"抖音内容采集"、"搜索一下xxx"、"帮我找xxx"等场景时加载此技能。

Audits

Suspicious

Install

openclaw skills install douyin-scraper-nl

douyin-scraper

抖音图文笔记采集工具 —— 一条命令完成:搜索 → 筛选图文 → 截图 → OCR → Markdown 报告。

⚠️ 前置配置

1. 安装依赖

pip install playwright requests python-dotenv
python -m playwright install chromium

2. 配置 Baidu PaddleOCR Token

在技能目录创建 .env

BAIDU_PADDLEOCR_TOKEN=你的token

获取 Token:访问 百度 AI Studio,免费注册,每天 1 万次免费调用。

3. 登录抖音(只需一次)

python <skill_path>/scripts/login.py

浏览器打开抖音,扫码登录后关闭。登录状态自动保存,后续无需重复操作。


自然语言搜索(推荐)

用户可以用自然语言请求搜索,你(AI agent)需要从中提取搜索关键词,然后调用脚本。

提取规则:

  1. 去掉搜索动作词("搜索一下"、"帮我找"、"搜一下"、"找一下"、"看看"、"查一下"等)
  2. 去掉平台限定词("抖音上的"、"抖音里"等)
  3. 去掉内容类型词("视频"、"图文"、"笔记"、"内容"等),除非它是搜索主题的一部分
  4. 剩余部分即为搜索关键词

示例:

用户输入提取关键词命令
搜索一下海鲜视频海鲜--keyword "海鲜"
帮我找抖音上的减肥餐减肥餐--keyword "减肥餐"
搜一下韩国医美图文笔记韩国医美--keyword "韩国医美"
看看最近咖啡相关内容咖啡--keyword "咖啡"
找一下关于猫咪的猫咪--keyword "猫咪"

执行步骤:

  1. 从用户自然语言中提取关键词
  2. 检查是否已登录(profile/ 目录是否存在且有内容)
  3. 如未登录,先运行 python <skill_path>/scripts/login.py(需要用户扫码)
  4. 运行采集脚本
  5. 读取生成的 Markdown 报告,向用户呈现结果摘要

直接使用

# 采集 10 篇图文笔记(含 OCR)
python <skill_path>/scripts/full_workflow.py --keyword "韩国医美"

# 指定数量
python <skill_path>/scripts/full_workflow.py --keyword "减肥餐" --count 5

# 跳过 OCR(仅截图)
python <skill_path>/scripts/full_workflow.py --keyword "咖啡" --no-ocr
参数说明默认值
--keyword搜索关键词必填
--count采集笔记数量5
--no-ocr跳过 OCR关闭
--headless无头模式(需 Xvfb 或已登录状态)关闭

无头环境运行

在服务器/容器中,需先启动 Xvfb,再用 --headless 运行:

Xvfb :99 -screen 0 1280x800x24 &
export DISPLAY=:99
python <skill_path>/scripts/full_workflow.py --keyword "海鲜" --headless

⚠️ 首次使用需先登录(python <skill_path>/scripts/login.py),登录状态保存在 profile/ 目录。无头环境无法扫码,需在有头环境先完成登录。


输出

报告保存至 output/notes_{keyword}_{timestamp}.md,图片保存至 data/images/

每篇笔记包含:

  • 🔥 热度分数(点赞数 / 发布天数)及计算公式
  • 👍 点赞数、发布时间、作者、原文链接
  • 📝 原文描述
  • 🔍 OCR 识别的图片文字(支持多图)
  • 🖼️ 本地截图路径

技术特点

  • Playwright 截图:通过 element.screenshot() 截取内容图,绕过抖音图片 URL 反爬虫
  • 图文过滤:自动识别并跳过视频,只采集「图文」类型笔记
  • OCR 噪音过滤:自动去除截图中的抖音导航栏文字(精选/推荐/关注 等)
  • 多图支持:一篇图文多张图片逐张截图 + OCR,合并识别结果
  • 反检测:有头浏览器(headless=False)+ 拟人操作节奏,避免触发验证码
  • 热度公式likes / days_ago,越新越热排越前

目录结构

douyin-scraper/
├── scripts/
│   ├── full_workflow.py   # 主流水线
│   └── login.py           # 登录脚本
├── data/
│   └── images/            # 截图
├── output/                # Markdown 报告
├── profile/               # 浏览器登录状态
└── .env                   # Token 配置