TikTok Scraper 是一个开源工具,托管在 GitHub 上,专为从 TikTok 平台提取视频和元数据的用户设计。开发者可以通过命令行界面或代码调用,快速下载视频、获取用户资料、趋势、标签或音乐相关数据。该工具支持无水印视频下载,适合需要批量处理 TikTok 内容的用户。项目提供详细文档,易于配置和使用,适用于内容创作者、数据分析师和开发者。用户需遵守 TikTok 的使用条款,确保合法使用数据。
功能列表
- 批量下载 TikTok 视频,支持无水印选项。
- 采集用户主页、趋势、标签和音乐的元数据。
- 支持通过用户名、标签、趋势或音乐 ID 提取视频。
- 提供 JSON 和 CSV 格式的数据输出。
- 支持异步下载,提升批量处理效率。
- 允许设置代理和自定义请求头,绕过部分限制。
- 提供历史记录功能,避免重复下载。
- 支持从文件批量读取任务,自动化处理多个目标。
使用帮助
安装流程
TikTok Scraper 是一个基于 Node.js 的工具,用户需要先安装运行环境。以下是详细安装步骤:
- 安装 Node.js
访问 Node.js 官网,下载并安装最新版本的 Node.js(推荐使用 LTS 版本)。安装完成后,打开终端,输入node -v
和npm -v
检查版本,确保安装成功。 - 克隆项目
在终端运行以下命令,将 TikTok Scraper 项目克隆到本地:git clone https://github.com/TikTok-Scraper/TikTok-Scraper-Video-Downloader-Reporter.git
进入项目目录:
cd TikTok-Scraper-Video-Downloader-Reporter
- 安装依赖
在项目目录下运行:npm install
这会安装项目所需的所有依赖包,如
axios
和commander
。 - 配置环境
项目支持通过命令行传递参数,例如设置代理或会话 cookie。用户需准备 TikTok 的sid_tt
会话 ID(可通过浏览器开发者工具获取)。创建一个配置文件(可选)或直接在命令中指定参数。 - 运行工具
使用以下命令测试工具是否正常运行:node index.js --help
这会显示所有可用命令和选项。
主要功能操作
TikTok Scraper 提供多种命令,用于不同场景的数据采集和视频下载。以下是主要功能的详细操作流程:
1. 下载用户视频
要下载某个用户的主页视频,运行以下命令:
node index.js user <用户名> -d -n 10 --session sid_tt=<会话ID>
<用户名>
:TikTok 用户名,例如tiktok
。-d
:启用下载模式。-n 10
:指定下载 10 个视频。--session
:设置会话 ID,避免登录限制。
下载的视频将保存到当前目录(默认路径为 CURRENT_DIR
)。用户可通过 --filepath
参数自定义保存路径:
node index.js user <用户名> -d --filepath ./videos
2. 无水印视频下载
要下载无水印视频,需启用 noWaterMark
选项:
node index.js video <视频URL> -d --noWaterMark
<视频URL>
:TikTok 视频的完整链接,例如https://www.tiktok.com/@tiktok/video/123456789
。--noWaterMark
:下载无水印版本(可能影响下载速度)。
3. 采集元数据
要获取用户、标签或趋势的元数据,运行以下命令:
node index.js hashtag <标签名> -n 20 --filetype json
<标签名>
:不带#
的 TikTok 标签,例如funny
。-n 20
:采集 20 条数据。--filetype json
:将数据保存为 JSON 格式(支持csv
或all
)。
输出文件将包含视频 ID、标题、发布时间、点赞数等信息,适合数据分析。
4. 使用代理
为避免封禁,可设置代理:
node index.js user <用户名> -d --proxy http://127.0.0.1:8080
用户可提供单个代理地址或代理列表,工具会随机选择。
5. 查看历史记录
为避免重复下载,工具支持查看历史记录:
node index.js history
此命令显示已下载的视频和数据记录。用户可通过 history -r user:<用户名>
查看特定用户的下载历史。
6. 批量处理
支持从文件读取任务,格式为每行一个目标(用户名、标签、视频 URL 等):
node index.js from-file tasks.txt -d
tasks.txt
示例:
user tiktok
hashtag funny
video https://www.tiktok.com/@tiktok/video/123456789
注意事项
- 合法性:用户需遵守 TikTok 的服务条款,避免滥用工具导致账号限制。
- 会话 ID:部分功能需要有效的
sid_tt
会话 ID,可通过浏览器登录 TikTok 后获取。 - 性能优化:异步下载(
asyncDownload
)和异步采集(asyncScraping
)可提升效率,但需根据设备性能调整参数。
通过以上操作,用户可以快速上手 TikTok Scraper,完成视频下载和数据采集任务。工具文档详细,社区支持活跃,适合开发者灵活定制。
应用场景
- 内容创作者
内容创作者可批量下载热门视频,分析趋势内容,用于创作灵感或剪辑素材。无水印下载功能方便二次编辑。 - 数据分析师
数据分析师可采集用户、标签或音乐的元数据,分析 TikTok 平台的用户行为、内容热度和趋势走向。 - 营销团队
营销团队可通过工具获取竞品账号的数据,研究其视频内容和互动情况,优化营销策略。 - 开发者
开发者可基于 TikTok Scraper 开发自动化工具,集成到内容管理系统或数据处理流水线中。
QA
- TikTok Scraper 是否需要 TikTok 账号?
大部分功能需要有效的会话 ID(sid_tt
),可通过登录 TikTok 后获取。部分功能(如单视频下载)无需账号。 - 如何避免被 TikTok 限制?
使用代理(--proxy
)并限制请求频率。避免频繁请求同一目标,确保会话 ID 有效。 - 支持哪些数据格式?
支持 JSON 和 CSV 格式,通过--filetype
参数指定。默认不保存文件,仅输出到终端。 - 无水印下载会影响速度吗?
是的,无水印下载(--noWaterMark
)需额外处理,可能比普通下载慢。建议小规模测试。