【发布时间】:2016-09-29 12:37:34
【问题描述】:
我设置了一个节点脚本来从 AngularJS 应用程序中抓取页面,然后生成测试所需的代码。它工作得很好,除了一件事。 ng-如果。由于 ng-if 从 dom 中删除元素,因此脚本永远不会看到这些代码块。我无法删除 ng-if。所以我想知道是否有某种方法可以在 node-phantom 请求页面和实际将所有内容加载到 phantoms dom 之间拦截 html。我希望做的只是将所有 ng-if 设置为 true,以便所有内容都可用。有人对此有任何想法吗?
编辑我使用的是 phantomjs-node 而不是 node-phantom。
【问题讨论】:
-
您能否提供一个示例页面的链接,以便我在示例中使用它?
-
@Vaviloff - 我不确定你想要什么作为例子......你能更具体吗?如果你只是想要一个使用 ng-if 的例子,那么 plnkr.co/edit/UdT7mfG9P7mWmK7g2L4G?p=preview
-
为什么要“拦截”呢?为什么不能像用户浏览网站一样编写爬虫?
-
@ArtjomB。我正在抓取内容来为我们的自动化测试工具 Selenium 和 Appium 生成页面对象模型。目的是加快创建自动化测试的过程。
标签: html angularjs node.js web-scraping phantomjs