抓取时如何处理 'endless' 网页

How to deal with an 'endless' webpage when scraping

我正在制作一个抓取工具,从 facebook 抓取我的朋友列表,然后从他们那里抓取一个共同朋友的列表,目标是用这些数据构建一个网络。我查看了官方 facebook api,似乎不可能这样做,我决定简单地从网页上抓取。

使用 mechanize 登录后,我抓取了页面,发现 facebook 一次只能加载 20 个好友,滚动时加载更多。我查看了他的机械化文档,但找不到解决方案。我试着睡了几秒钟,然后再调整页面,但也没用。

不知道从这里到哪里去,有没有在 mechanize 中模拟滚动的方法?

除非你用Selenium来模拟实际的网页,否则你将无法模拟"scrolling"(没有window时如何滚动,因此没有window身高?)

您声明 API 中没有允许您获取朋友的朋友的内容,但似乎有一个 API function 允许获取用户的朋友列表。

如果这也不起作用,您唯一的选择是追踪 FB 用来获取下一个好友列表的 ajax,并使用它来获取更多信息。