You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何避免Facebook账号封禁并解决群组爬取无帖子报错

解决Facebook爬虫报错:WARNING:facebook_scraper.page_iterators:No raw posts (<article> elements) were found in this page

问题场景

登录Facebook爬取群组内容用于帖子评论情感分析,首次爬取导致账号封禁,找回账号后运行代码出现上述警告,无法获取帖子数据。

涉事代码

import scipy as sp
from facebook_scraper import get_posts
import pandas as pd
from textblob import TextBlob as tb
import time
cookies = {"c_user": "1000092631152643",
"xs":"33%3AQklvQk0aNZ5TWw%3A2%3A1667187574%3A-1%3A1593AAcVH4RpjVV3E7"
}
listposts = []
options = {"comments": True, "reactors": True, "progress": True, "posts_per_page": 200}
group_id = 944651605603625
for post in get_posts(group = group_id, extra_info = True, pages = 100, options = options, cookies=cookies):
    print(post['text'][:50])
    time.sleep(20)
    listposts.append(post)

解决办法

  • 更新Cookie:账号找回后Facebook会重置会话,你当前的xs和c_user已失效。重新从登录后的浏览器提取最新Cookie:

    1. 浏览器登录Facebook并进入目标群组
    2. F12打开开发者工具,切换到Application标签
    3. 在Cookies→facebook.com下复制新的c_user和xs值替换代码里的旧Cookie
  • 降低爬取强度:封禁后的账号处于风控监控期,单次请求200条帖子太激进,先调小参数:

    # 减少单页请求数量
    options = {"comments": True, "reactors": True, "progress": True, "posts_per_page": 50}
    # 延长休眠时间,甚至随机化间隔
    import random
    time.sleep(random.randint(30, 60))
    

    同时把pages=100改成pages=5先测试,能正常获取再逐步增加。

  • 确认群组权限:手动访问群组页面,确保账号是群组成员,且群组不是私密/受限类型——私密群组即使登录也爬不到内容,除非你是管理员。

  • 升级facebook_scraper库:Facebook页面结构经常更新,旧版本库可能适配失效,执行升级命令:

    pip install --upgrade facebook-scraper
    

内容的提问来源于stack exchange,提问作者Akpakli Edudzi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 01:01:00