每月活跃用户超过 2.7 亿 截至 2020 年第二季度,Facebook 是全球最大的社交网络。 在撰写本文时,根据谷歌的数据,还有高达 620 亿个群组。 想象一下您可以收集的所有这些组的数据,然后您可以将其用于您的项目或业务。

在这里 Crawlbase(以前的 ProxyCrawl),我们关心数据,我们所有的团队都喜欢互联网提供的自由,我们相信如果它可供公众使用,那么每个人都有权看到它。 但是,我们也尊重隐私,因此在本文中,我们将重点介绍使用 PyCharm 和 Python2 解释器创建一个简单的爬虫,然后您可以使用它来爬取您的目标公共组。

考前准备

在我们开始实际编码之前,我们需要设置的东西很少。

首先,在 PyCharm 并将其命名为 crawlbase.py,完成后,右键单击该项目并创建一个名为 facebookscraper 的新 Python 文件,如下图所示:

Pycharm 创建项目

其次,让我们确保我们使用的是 Python 2 解释器。 按 Ctrl + Alt + S (在 Windows 上)选择解释器:

选择蟒蛇

抓取 Facebook 群组

现在我们已经成功地设置了我们的文件,是时候编写代码了。 我们现在只做最基本的,所以这会很短。

首先,我们需要导入我们的模块:

1
2
3
 网址库2 进口 打开网址
网址库 进口 报价加号
进口 JSON

接下来,我们将传递用于抓取的 URL。 重要的是要知道,在抓取 Facebook 时,我们需要使用我们的 Javascript 令牌,以及以下参数:

&autoparse=true 这允许我们获取所请求页面的抓取数据。

&scroll=true 使用 Javascript 令牌时,此参数将允许 API 以 10 秒的滚动间隔滚动页面。

1
2
3
网址 = 报价加号('https://www.facebook.com/PUBLIC_FACEBOOK_GROUP')

处理程序 = urlopen('https://api.crawlbase.com/?token=YOUR_JS_TOKEN&format=json&autoparse=true&scroll=true&url=' + 网址)

对于我们代码的最后一部分,我们只需要以可读的格式打印响应。 完整的代码现在应该如下所示:

1
2
3
4
5
6
7
8
9
10
 网址库2 进口 打开网址
网址库 进口 报价加号
进口 JSON

网址 = 报价加号('https://www.facebook.com/groups/198722650913932')

处理程序 = urlopen('https://api.crawlbase.com/?token=YOUR_JS_TOKEN&format=json&autoparse=true&scroll=true&url=' + 网址)

pretty_json = json.loads(handler.read())
打印 json.dumps(漂亮的json ['身体'],缩进=4)

要运行代码,只需按 Shift + F10 (在 Windows 上)你应该得到类似的东西:

Python 输出

你有它; 代码已准备就绪,您可以将其应用于您的任何项目。 请记住,您可以免费使用我们的 Python库 以及。

众所周知,Facebook 是最难抓取的网站之一,所以如果您遇到任何问题,只需给我们发送消息,我们的 Crawlbase(以前的 ProxyCrawl)支持团队 将很乐意提供帮助。

享受爬行!