我正在研究Apache Nutch修改项目。我们已经将Nutch的原始模块换成了使用HtmlUnit构建的模块。我需要下载整个Facebook用户网站(例如http://www.facebook.com/profile.php?id=100002517096832),该网站将使用我们自己的解析器进行解析。不幸的是,Facebook正在使用一种称为BigPipe(http://www.facebook.com/note.php?note_id=389414033919)的机制。因此,当前大多数网站都隐藏在<.!-- -->
标签中。通常,当我们向下滚动Facebook页面时,每次我们要访问页面底部时都会解压缩新内容。我曾尝试使用Javascript滚动我的htmlPage
(HtmlPage
项目中的HtmlUnit
对象),但最终我意识到滚动不会触发在Facebook用户站点上加载新内容。
我如何检查页面上的哪个事件触发在当前Facebook页面上加载内容?也许我应该从不同的角度处理问题,例如尝试自己提取BigPipe的“事物”?你曾经做过吗?
在回答您的问题之前……您要在那建立什么样的项目?
由于Apache Nutch是开放源代码网络搜索软件,我认为您正在尝试构建某种搜索引擎,该引擎可抓取Facebook用户配置文件/提要以获取数据并使其可在某些第三方上搜索网站?
嗯,这是对Facebook Platform Policies的冒犯:
I。特性和功能
[
12.
未经我们的书面许可,您不得在任何搜索引擎或目录中包含从我们获得的数据。
所以,您有书面许可吗?