1

我们目前正在尝试使用 swiftype,并希望了解如何爬取具有 javascript 框架的网站,因为存在异步调用。

我创建了一个引擎,并且能够基于我的站点地图运行爬网,但它不是读取实际内容,而是读取我的 Angular js 代码。

例如:

如果有类似的角码 <div ng-class='grey title'> {{ctrl.title}}</div>

如果此数据在页面加载时被绑定,而不是读取标题,它会读取实际代码,{{ctrl.title}} 因此当我搜索时,页面会返回类似 “这篇文章是关于 {{ctrl.title}} 的内容。我们会带您完成。 ……”

关于如何使其与 js 框架兼容的任何想法?

4

1 回答 1

3

您可以使用像Phantom.js这样的“无头”浏览器。“无头”意味着它没有 GUI。因为它实际上是一个浏览器,它会正确地解释页面。它可以从运行服务器端的 JavaScript 启动。查看Web Scraping:处理 AJAX 网站第一部分和 GitHub 上的代码:introWebScraping

于 2017-10-20T10:59:32.847 回答