【发布时间】:2021-01-24 14:07:14
【问题描述】:
作为学术项目的一部分,我需要从一个 我不是管理员的 Facebook 页面中抓取数据,我做了一些研究,发现这可以通过 Facebook Developper 实现,但是在我是页面管理员的情况下。如果您有任何建议对我的情况有所帮助,我将不胜感激。谢谢
【问题讨论】:
标签: python facebook web-scraping
作为学术项目的一部分,我需要从一个 我不是管理员的 Facebook 页面中抓取数据,我做了一些研究,发现这可以通过 Facebook Developper 实现,但是在我是页面管理员的情况下。如果您有任何建议对我的情况有所帮助,我将不胜感激。谢谢
【问题讨论】:
标签: python facebook web-scraping
使用 :User Profile API:
默认情况下,您的应用可能会检索 id、name、first_name、 完成此操作的用户的 last_name 和 profile_pic 字段 信息公开并已选择加入您的主页。
在此页面上 用户配置文件 API
用户配置文件 API 允许您使用页面范围的 ID (PSID) 来检索可用于个性化用户与您的 Messenger 交互体验的用户配置文件信息。 内容
Availability
User Opt-in
Profile Unavailable
Available Profile Fields
Retrieving a Person's Profile
Last Ad Referral
Error Codes
可用性
尽管您可能拥有 PSID,但您可能没有权限或无法检索某人的个人资料信息。例如,即时游戏页面不允许使用此 API。 用户选择加入
以下事件将授权您的 Messenger 机器人访问某人的个人资料信息:
The person starts the conversation via a welcome screen and tapped the "Get Started" button.
The person starts the conversation by clicking a "Send to Messenger" button.
The person starts the conversation by sending a message.
The person starts the conversation by accepting a Page's message request.
Your Messenger bot uses the askPermission() function of the Messenger Extensions SDK in the webview to ask for the user_profile permission.
某些入口点允许您或其他人发起对话,而无需向您的机器人授权该人的公开个人资料。在这些情况下,您的 Messenger 机器人将在用户回复初始消息后被授予访问用户个人资料的权限。某人可能会与您的 Messenger 机器人发起对话但未授权个人资料权限的值得注意的情况包括:
Conversations started via the Checkbox Plugin and the user did has not responded on Messenger.
Interactions with Ads that Click to Messenger before the user replies on Messenger
个人资料不可用
目前,用户配置文件 API 不支持检索使用电话号码而不是 Facebook 帐户创建的 Messenger 帐户的个人资料信息。
在这种情况下,API 将返回错误代码 2018218,并显示消息“此用户没有可用的个人资料”。 可用的配置文件字段
默认情况下,您的应用可能会检索已公开此信息并选择加入您主页的用户的 id、name、first_name、last_name 和 profile_pic 字段。
应用可以通过 API 查询给定页面的可用字段。请参阅功能审查 API
可以请求以下配置文件字段: 字段名称 描述 功能访问
身份证
用户的 PSID
默认授予
名字
用户的名字和姓氏
默认授予
名字
名字
默认授予
姓氏
姓氏
默认授予
profile_pic
个人资料图片的 URL。该 URL 将过期。
默认授予
语言环境
Facebook 上用户的区域设置。有关支持的语言环境代码,请参阅支持的语言环境。
此页面级功能需要 Facebook 批准
时区
时区,相对于 GMT 的数字
此页面级功能需要 Facebook 批准
性别
性别
此页面级功能需要 Facebook 批准 请求页面的用户字段的功能访问权限
转到页面设置 > 高级消息传递 在“人员信息”下选择该字段并单击“请求”按钮。
参考:https://developers.facebook.com/docs/messenger-platform/identity/user-profile/
【讨论】: