尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

MediaCrawler 多平台自媒体数据采集:配置教程与避坑指南

MediaCrawler 多平台自媒体数据采集:配置教程与避坑指南 MediaCrawler 多平台自媒体数据采集配置教程与避坑指南【免费下载链接】MediaCrawler小红书笔记 | 评论爬虫、抖音视频 | 评论爬虫、快手视频 | 评论爬虫、B 站视频 评论爬虫、微博帖子 评论爬虫、百度贴吧帖子 百度贴吧评论回复爬虫 | 知乎问答文章评论爬虫项目地址: https://gitcode.com/GitHub_Trending/me/MediaCrawlerMediaCrawler 是一个开源的多平台爬虫覆盖小红书、抖音、快手、B站、微博、贴吧、知乎可采集帖子、笔记、评论和二级评论等公开内容。它的做法是 Playwright 浏览器自动化加 CDPChrome DevTools 协议简单说就是让程序直接操控你本机的真实 Chrome复用现有登录态不用手动逆向签名算法。本文按真实使用流程展开环境准备、首次运行、取数方式、数据存储、稳定运行和排错。读完你可以跑通一个采集任务并知道数据落在哪里。先核对清单环境和依赖开始前逐项核对只有前两项是硬性要求其余看你是否用到对应功能。依赖是否必需说明Python ≥ 3.11必需项目pyproject.toml中声明的版本要求uv推荐uv sync一条命令装齐依赖Node.js ≥ 16条件需要仅爬抖音、知乎时需要用于签名脚本Chrome ≥ 144必需默认 CDP 模式连接你已有的 ChromeRedis条件需要启用代理 IP 池时需要不开代理则不需要SQLite / MySQL / PostgreSQL可选仅数据库存储方案需要Chrome 的关键一步地址栏输入chrome://inspect/#remote-debugging勾选 Allow remote debugging for this browser instance页面出现Server running at: 127.0.0.1:9222即就绪。细节见 CDP模式使用指南。如果你改用标准 Playwright 模式ENABLE_CDP_MODE False才需要执行uv run playwright install安装浏览器驱动。第一次跑起来从克隆到看到数据环境安装就三条命令git clone https://gitcode.com/GitHub_Trending/me/MediaCrawler cd MediaCrawler uv sync然后打开config/base_config.py确认四个关键字段文件内都有中文注释PLATFORM xhs # xhs | dy | ks | bili | wb | tieba | zhihu LOGIN_TYPE qrcode # qrcode | phone | cookie CRAWLER_TYPE search # search | detail | creator KEYWORDS 编程副业登录态即保存在浏览器缓存里的登录凭证决定了之后请求要不要重新扫码默认会保留SAVE_LOGIN_STATE True首次运行弹出二维码用对应 App 扫码确认之后各平台在USER_DATA_DIR指向的目录里各存一份可直接复用。执行入口命令uv run main.py --platform xhs --lt qrcode --type search跑完后data/目录下会出现 jsonl 文件按内容、评论等分别保存用文本编辑器或 pandas 打开即可确认数据。不想敲命令的话也有 WebUIuv run uvicorn api.main:app --port 8080启动后端在webui/下npm install后npm run dev浏览器访问http://localhost:5173/配置参数、看日志、预览数据都在页面上完成。三种取数方式搜索、指定帖子、创作者主页--type参数对应三种方式选哪种取决于你手头有什么线索。关键词搜索 search不知道具体帖子、只有主题方向时用。关键词写在KEYWORDS英文逗号分隔多个排序方式等参数在各平台配置里比如小红书的SORT_TYPE。适合某话题下整体讨论情况这类问题。指定帖子 detail已知具体帖子时用。小红书填XHS_SPECIFIED_NOTE_URL_LIST注意 URL 必须带xsec_token参数其他平台类似字段名是DY_SPECIFIED_ID_LIST、BILI_SPECIFIED_ID_LIST这类*_SPECIFIED_ID_LIST。适合把这 20 条帖子的评论全抓下来。创作者主页 creator盯人时用。小红书、B站等填*_CREATOR_ID_LIST小红书需带xsec_token的完整 URL贴吧和知乎用的是主页 URL 列表即TIEBA_CREATOR_URL_LIST和ZHIHU_CREATOR_URL_LIST。能拿到该创作者的内容列表和评论。数据落地存哪、什么格式、怎么导出默认行为是往data/目录写 jsonl 文件每行一个 JSON 对象追加写入性能好程序直接写文件、无需额外服务。要换格式用--save_data_option参数支持 csv、json、jsonl、excel、sqlite、postgres。Excel 适合人工查看多工作表内容、评论、创作者带标题样式和自动列宽导出细节见 Excel 导出指南。SQLite 是最省事的库方案先uv run main.py --init_db sqlite初始化再--save_data_option sqlite运行MySQL 则是--init_db mysql配--save_data_option db。需要按条件查询、去重、跨任务积累时建议直接上库。存储代码按平台放在store/下例如store/xhs/的_store_impl.py是小红书的存储实现store/excel_store_base.py是 Excel 通用基类数据模型在model/ORM 与会话在database/。整体结构可看 项目代码结构 和 数据存储指南。稳定性怎么保间隔、代理池、登录态稳定采集的三件事是控制节奏、隐藏真实 IP、维护登录态。请求间隔CRAWLER_MAX_SLEEP_SEC控制两次请求之间暂停的秒数默认 2。原理不复杂平台风控会看请求模式短时间高频连发最容易触发放慢一点几乎不损失什么。MAX_CONCURRENCY_NUM默认是 1不建议盲目开并发先保证单线程跑稳。代理 IP 池采集量大或长期跑时建议开代理池代理池就是程序自动从服务商拉一批 IP、放进缓存、轮流使用对外不暴露你的真实出口 IP。配置上开ENABLE_IP_PROXY TrueIP_PROXY_PROVIDER_NAME可选 kuaidaili、wandouhttp、static 三家有自己的固定代理时选 static 并填STATIC_PROXY_URL。流程是从服务商接口拉 IP → 存入 Redis → 建池 → 取用轮换实现见proxy/proxy_ip_pool.py服务商密钥通过环境变量配置说明在 代理使用。MediaCrawler 代理IP池工作流程图检查开关、拉取IP、存入Redis、创建并轮换代理池以快代理为例免费 IP 列表长这样开通试用后拿到密钥填入配置即可登录态维护登录态会过期也可能被风控失效。恢复方式很直接删掉对应平台的浏览器数据目录重新走一遍扫码。小红书扫码后一直弹滑块的别用标准 Playwright 模式切回 CDP 模式连你自己的真实 Chrome——真实的 Cookie、扩展和浏览历史让风控很难把它判定为自动化。场景配方三个常见用法竞品监控把竞品账号主页填进对应*_CREATOR_ID_LIST跑--type creator。数据存 excel 或 sqlite定期执行按时间对比内容更新。需要图片视频时再开ENABLE_GET_MEIDAS True默认不开以省流量。舆情收集KEYWORDS填品牌词或话题词跑--type search。保持ENABLE_GET_COMMENTS True评论多的话题可开ENABLE_GET_SUB_COMMENTS抓二级评论。开ENABLE_GET_WORDCLOUD True直接产出评论词云停用词和自定义词组配置见docs/词云图使用配置.md。学术调研用多组KEYWORDS做对照采集固定SORT_TYPE保证可比性。存 jsonl 或 sqlite保留全部字段便于后续清洗。用START_PAGE和CRAWLER_MAX_NOTES_COUNT固定采集深度与条数实验可复现。常见故障速查现象可能原因处理爬抖音/知乎报execjs ProgramError缺 Node.js 环境安装 Node.js ≥ 16 后重跑小红书扫码后一直弹滑块非真实浏览器环境触发风控用 CDP 模式连真实 Chrome必要时删浏览器数据目录重新登录报无法连接 9222 端口远程调试没开或 Chrome 版本低检查chrome://inspect勾选chrome://version确认 ≥ 144之前能爬过段时间失效账号被平台风控降频、删数据目录换账号、启用代理池playwright Timeout超时网络不通或慢检查代理/网络设置调整BROWSER_LAUNCH_TIMEOUT更完整的问答在 常见问题。从这里开始到这里单平台小规模采集的完整链路已经打通先在一个平台上把 search 跑通、确认data/里的数据再换平台或存储方式。开源版已覆盖三种取数方式和多种存储格式如果你的任务是长期连续运行商业版在断点续爬任务中断后从上次进度接着跑不用从头重来、多账号轮换上有额外能力可按需了解。下一步就一件事克隆仓库填好KEYWORDS运行uv run main.py --platform xhs --lt qrcode --type search看看数据长什么样。【免费下载链接】MediaCrawler小红书笔记 | 评论爬虫、抖音视频 | 评论爬虫、快手视频 | 评论爬虫、B 站视频 评论爬虫、微博帖子 评论爬虫、百度贴吧帖子 百度贴吧评论回复爬虫 | 知乎问答文章评论爬虫项目地址: https://gitcode.com/GitHub_Trending/me/MediaCrawler创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表