使用Facebook API列出组成员的加入日期和邀请者
我可以使用Facebook Graph API获取组成员列表。 最简单的方法是进入Graph API Explorer并执行格式为{group_id}/members
的GET请求。 是否有类似的方式获得成员的加入日期以及他们受邀的人?
相关的Graph API文档似乎没有提到它。 但我知道这些信息是由Facebook存储的,因为可以通过Facebook本身列出所有的小组成员和他们的受邀者。 有没有办法通过API获取这些信息?
编辑:在FQL组或group_member API中也没有。
尽管这些信息在API上不可用,但您可以通过使用Selenium来刮取成员页面。 首先,实例化一个驱动程序并使用它来获取成员页面:
driver.gethttps://www.facebook.com/groups/your group number/members
然后,查找会员信息:
containers = driver.find_elements_by_tag_name('td')
最后,遍历Web元素,提取文本并解析结果列表以获取联合日期信息:
member_info = container.text.split('n')
name = member_info[0]
member_since = member_info[-1]
您仍然必须将这些信息映射到用户ID,您可以通过在容器中查找另一个元素并使用REGEX来执行此操作。
`def parse_id(self, container, name):
hovercard = container.find_element_by_link_text(name).get_attribute('data-hovercard')
regex_id = re.compile('php?id=(d*)')
member_id = regex_id.search(hovercard).group(1)
return member_id`
它确实被Facebook存储并被检索用于内部API。 但对于Graph API,无法获取此信息。
所有可用于group_member
的字段都列在SELECT column_name FROM column WHERE table_name = "group_member"
上一篇: Use Facebook API to list group members' join date and inviter
下一篇: Graph API stalled