news 2026/8/24 4:12:19

如何用MediaCrawler采齐7个平台的数据并全程可追溯

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何用MediaCrawler采齐7个平台的数据并全程可追溯

如何用MediaCrawler采齐7个平台的数据并全程可追溯

【免费下载链接】MediaCrawler小红书笔记 | 评论爬虫、抖音视频 | 评论爬虫、快手视频 | 评论爬虫、B 站视频 | 评论爬虫、微博帖子 | 评论爬虫、百度贴吧帖子 | 百度贴吧评论回复爬虫 | 知乎问答文章|评论爬虫项目地址: https://gitcode.com/GitHub_Trending/me/MediaCrawler

多平台的数据为什么采不全、对不上

MediaCrawler是一个面向多平台数据采集的开源爬虫框架。从小红书、抖音、B站分别拉数据,常常拿到三种文件、三套字段,对不上账。这篇文章按安装、首次采集、平台挑选、存储落地的顺序走一遍。

三分钟跑通第一次采集:开源爬虫框架最短路径

前置条件:装好 uv 和 Node.js ≥16.0.0(抖音、知乎的签名脚本要跑在 Node 上)。然后三条命令:

git clone https://gitcode.com/GitHub_Trending/me/MediaCrawler cd MediaCrawler && uv sync && uv run playwright install uv run main.py --platform xhs --lt qrcode --type search

第二条装 Python 依赖和浏览器驱动,第三条启动关键词搜索模式:手机扫码后浏览器开始访问页面,数据默认以 jsonl 落进 data/ 目录。不想碰命令行的话,启动 api/ 服务后打开 WebUI,日志窗口会实时滚动采集进度。

参数都在 config/base_config.py 里:KEYWORDS 填搜索词,CRAWLER_MAX_NOTES_COUNT 控制采集量(默认 15 条),CRAWLER_TYPE 在 search、detail、creator 三种模式间切换。

Playwright 爬虫、代理池与追踪ID:全程追踪怎么做的

链路靠三件事撑住。

浏览器自动化:MediaCrawler 走 Playwright 爬虫的路线——登录并保存登录态,再在页面里执行 JS 表达式取签名参数,不用逆向加密算法。base/base_crawler.py 定义爬虫、登录、存储、客户端四个抽象类,7 个平台各填实现。

代理池:被限流时换出口 IP。proxy/proxy_ip_pool.py 从供应商接口拉 IP、逐个验证、存入 Redis,请求失败就换下一个。内置 kuaidaili、wandouhttp、static(自备静态代理)三种来源。

追踪 ID 与重试:小红书签名会给每个请求生成 16 位随机 trace id,请求链路事后能查;客户端层失败会自动重试 3 次。

![MediaCrawler代理IP池采集流程图](https://raw.gitcode.com/GitHub_Trending/me/MediaCrawler/raw/5665a271ef15e0ec82b1f48a951b66760e054db9/docs/static/images/代理IP 流程图.drawio.png?utm_source=gitcode_repo_files)

7个平台怎么挑:一平台一句话

7 个平台实现都在 media_platform/ 目录下,挑选建议:

平台代号能拿到的数据一句话特点
小红书xhs笔记、评论、词云签名与追踪ID最完整,支持海外版
抖音dy视频、评论、创作者签名依赖 Node 环境,扫码可能出手机验证
快手ks视频、评论走 GraphQL 接口
B站bili视频、UP动态、评论支持词云生成
微博wb帖子、评论唯一支持下载图片视频资源
贴吧tieba帖子、二级回复有回复树
知乎zhihu问答、文章、回答同样需要 Node 环境

做小红书数据采集或抖音数据抓取就从前两行开始;盯社区舆情看贴吧和微博。search、detail、creator 三种模式靠 --type 切换,不用改代码。

存储格式怎么选、数据长什么样

SAVE_DATA_OPTION 有 8 个取值:csv、json、jsonl、excel、sqlite、mysql、postgres、mongodb。默认 jsonl 逐行追加,写入性能最好;临时看数用 excel(内容、评论、创作者 3 张表);长期使用建议 sqlite,靠唯一索引去重:

uv run main.py --init_db sqlite uv run main.py --platform xhs --lt qrcode --type search --save_data_option sqlite

表结构定义在 database/models.py,每个平台都是内容、评论、创作者 3 张表。值得留意的字段:add_ts 与 last_modify_ts 记录首次采集和最后更新时间,source_keyword 记下数据来自哪个关键词,creator_hash 是创作者匿名哈希,昵称做了脱敏,这个教学版不落库任何可识别真实用户的字段。

采集最常被问的3个坑:登录态、限流、重复数据

登录态失效:SAVE_LOGIN_STATE 默认把浏览器目录持久化,重跑不用重新扫码;状态真坏了就删掉对应平台的 user_data_dir 目录再扫一次。小红书扫码弹滑块时,配置默认非无头模式,直接在浏览器里手动过掉。

限流:请求间隔默认 2 秒、并发 1,别猛调并发;量上来就开代理池(ENABLE_IP_PROXY=True),让池子负责换 IP。

重复数据:文件类格式都是追加写,同一关键词跑两遍就重复;换 sqlite 或 mysql 直接解决——内容表对作品 ID 有唯一索引,冲突时更新而不是再插一条。

拿到数据之后:先跑一个平台

登录、采集、存储的管道已经铺好。挑一个最熟的先把 search 模式跑通,翻一遍 data/ 里的 jsonl 确认字段,再谈存储升级。

【免费下载链接】MediaCrawler小红书笔记 | 评论爬虫、抖音视频 | 评论爬虫、快手视频 | 评论爬虫、B 站视频 | 评论爬虫、微博帖子 | 评论爬虫、百度贴吧帖子 | 百度贴吧评论回复爬虫 | 知乎问答文章|评论爬虫项目地址: https://gitcode.com/GitHub_Trending/me/MediaCrawler

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/24 4:11:53

JSP技术在小微企业简历管理系统中的应用与实践

1. 项目概述:小微企业简历管理系统的价值与定位在当今就业市场竞争激烈的环境下,小微企业面临着独特的招聘挑战。相比大型企业,他们往往没有专业的HR团队和完善的招聘系统,却同样需要高效地筛选合适人才。这就是为什么一个基于JSP…

作者头像 李华
网站建设 2026/8/24 4:10:38

人形机器人如何实现顶级医疗普及:技术内涵、数字化路径与工程挑战

上周,马斯克在X平台上的一段发言,再次把“人形机器人”和“顶级医疗”这两个看似遥远的概念,强行拉到了同一个句子里。他预测,未来人形机器人将普及顶级医疗服务,让每个人都能享受到目前只有少数顶尖医院才能提供的诊断…

作者头像 李华
网站建设 2026/8/24 4:10:05

分层自进化智能体框架:构建持续成长的AI系统

1. 项目概述:从“一次性编码”到“持续进化”的范式转变最近在折腾一个挺有意思的东西,我把它叫做“分层自进化智能体框架”。这名字听起来有点唬人,但核心想法其实很朴素:我们能不能造出一个能自己学习、自己改进、甚至自己设计下…

作者头像 李华
网站建设 2026/8/24 4:09:59

TRON 2无人巡检系统在苏州管廊的实战部署与ROS开发指南

在智慧城市和工业自动化浪潮下,地下综合管廊作为城市的“生命线”,其安全运维的重要性日益凸显。传统的人工巡检方式不仅效率低下、成本高昂,还面临着环境恶劣、风险高等诸多挑战。近期,我们团队在苏州某大型地下综合管廊项目中&a…

作者头像 李华
网站建设 2026/8/24 4:08:59

PandasAI上手:不写SQL,用自然语言跑通第一份数据查询

PandasAI上手:不写SQL,用自然语言跑通第一份数据查询 【免费下载链接】pandas-ai Chat with your database or your datalake (SQL, CSV, parquet). PandasAI makes data analysis conversational using LLMs and RAG. 项目地址: https://gitcode.com/…

作者头像 李华
网站建设 2026/8/24 4:08:58

SWE Atlas:AI编程助手从代码补全到软件工程全栈评估的演进

1. 项目概述:当代码助手不再只是“修Bug”最近和几个团队负责人聊天,大家普遍有个感觉:现在市面上的AI编程助手,比如GitHub Copilot、Cursor,或者各种开源的代码生成模型,在解决具体问题、补全单行代码上确…

作者头像 李华