MediaCrawler5 平台社交媒体爬虫快速上手指南【免费下载链接】MediaCrawler-new项目地址: https://gitcode.com/GitHub_Trending/me/MediaCrawler-new你要为下周的竞品分析做一份小红书热门笔记汇总手动翻 50 条帖子、复制文案和评论一整个下午就没了。MediaCrawler 是一个覆盖 5 个社交平台的开源数据采集工具指定关键词和数量它自动完成登录、批量抓取视频、帖子、评论与互动数据最后按你选的格式落盘。覆盖 5 个平台的社交媒体数据采集MediaCrawler 面向数据分析师、内容运营和学术研究者支持小红书、抖音、快手、B站、微博五个平台。核心能力包括关键词搜索采集、指定帖子/视频 ID 定向抓取、创作者主页采集小红书、评论抓取以及抖音滑块验证码的自动处理。技术路线一句话概括用 playwright 驱动真实 Chromium 浏览器登录一次后缓存会话后续请求都在已登录的浏览器上下文里执行不需要你逆向任何加密接口。基于 playwright 的浏览器会话采集传统 requests 爬虫发的是裸HTTP 请求缺少浏览器指纹和加密签名平台风控很容易识别。MediaCrawler 换了个思路启动一个完整的 Chromium 实例保留 cookie、localStorage 等全部登录态需要加密参数如抖音签名时直接在浏览器里执行 JS 表达式取回结果配合libs/stealth.min.js抹掉自动化特征行为模式更接近真人所以你不需要关心每个平台的签名算法扫码登录一次后续采集全走已登录的浏览器通道触发风控的概率大幅降低。三分钟跑通首次采集环境准备git clone https://gitcode.com/GitHub_Trending/me/MediaCrawler-new cd MediaCrawler-new python -m venv venv source venv/bin/activate pip install -r requirements.txt playwright install改五个配置项打开 config/base_config.py按需修改PLATFORM xhs # xhs / dy / ks / bili / wb KEYWORDS Python,数据分析 LOGIN_TYPE qrcode # qrcode / phone / cookie SAVE_DATA_OPTION json # json / csv / db CRAWLER_MAX_NOTES_COUNT 50跑第一条命令python main.py --platform xhs --lt qrcode --type search浏览器弹出后用手机小红书扫码登录成功即开始采集数据写入data/目录。--type还支持detail指定 ID和creator创作者主页完整参数用python main.py --help查看。三种采集模式与多格式存储 搜索、定向与主页采集关键词搜索KEYWORDS填多个词逗号分隔程序逐个搜索并汇总指定 ID 定向抓取把帖子/视频 ID 填入各平台的*_SPECIFIED_ID_LIST精确采集目标内容创作者主页仅小红书填XHS_CREATOR_ID_LIST拉取指定博主的全部笔记 评论与互动指标ENABLE_GET_COMMENTS True后每条帖子/视频的评论列表随主数据一起落盘点赞、转发、收藏等互动指标默认随主数据保存MAX_CONCURRENCY_NUM控制并发数建议从小值开始 存储与登录状态管理数据写入JSON、CSV 或关系型数据库MySQL / PgSQL在config/db_config.py中切换SAVE_LOGIN_STATE True时登录态持久化到browser_data/下次运行免登录换账号只需删除browser_data/目录后重新扫码运营、分析师和研究者各取所需内容运营PLATFORM xhsKEYWORDS填赛道核心词每周跑一次search模式拿到热门笔记的标题、点赞和评论直接作为选题会素材。市场分析师用--type detail配合指定 ID 列表定向抓竞品帖子SAVE_DATA_OPTION db写入数据库后用 SQL 做时间序列对比观察竞品投放节奏和互动变化。学术研究者开启评论抓取CRAWLER_MAX_NOTES_COUNT控制样本量拿到结构化评论文本后直接接 NLP 管线做情感分析或话题建模。一键配置 IP 代理池避免封禁大规模采集时 IP 被封几乎是必然。MediaCrawler 内置IP 代理池基于 Redis 缓存代理 IP 及其过期时间自动从服务商拉取、轮询和续期。MediaCrawler 代理IP采集工作流程图展示从IP获取到数据采集的完整链路开启方式在config/base_config.py中设ENABLE_IP_PROXY True按需调IP_PROXY_POOL_COUNT默认 2。代理密钥通过环境变量jisu_key/jisu_crypto注入完整步骤见 docs/代理使用.md。合规使用要点遵守平台规则控制采集频率和批量大小避免高频请求触发风控保护用户隐私数据中可能含个人信息不对外传播、不用于商业骚扰控制并发与数量CRAWLER_MAX_NOTES_COUNT和MAX_CONCURRENCY_NUM设小模拟正常用户行为数据用途合法仅用于学习、研究和合规业务分析常见问题速查Q抖音采集报execjs ProgramError: SyntaxError装 Node.js v16.8.0 及以上版本抖音签名依赖本地 JS 运行环境。Q跑着跑着数据突然拿不到了大概率触发平台风控降低采集频率或开启代理池分散 IP。Q想换登录账号删除项目根目录下browser_data/文件夹重新扫码即可。Qplaywright TimeoutError: Timeout 30000ms exceeded检查网络是否正常浏览器启动阶段依赖网络加载资源。Q评论没抓到确认ENABLE_GET_COMMENTS已设为True该项默认关闭。模块划分与新增平台扩展media_platform/各平台爬虫实现按client.pyAPI 封装→core.py业务逻辑→login.py登录→field.py数据字段分层store/各平台数据存储支持 JSON / CSV / DBbase/抽象基类定义统一爬虫接口proxy/IP 代理池与账号代理池tools/滑块处理、时间工具等通用函数扩展新平台在media_platform/下新建目录继承AbstractCrawler并实现对应接口最后在main.py的CRAWLERS字典中注册即可。完整结构说明见 docs/项目代码结构.md。从第一条命令开始去docs/目录翻一下常见问题和手机号登录说明然后打开终端跑python main.py --help看看全部参数。第一条采集命令五分钟内就能出数据剩下的就是调关键词和数量了。【免费下载链接】MediaCrawler-new项目地址: https://gitcode.com/GitHub_Trending/me/MediaCrawler-new创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?