使用PhantomJS进行网页抓取

nce

是否可以在不指定要执行哪个功能的情况下完全像浏览器一样执行网页中的所有JavaScript?在我看到的大多数示例中,这些示例似乎指定了要从抓取的网页执行JavaScript的哪一部分。我需要抓取所有内容并像浏览器一样执行所有JavaScript,并让我获得最终执行的代码,我们可以使用google inspect看到这些代码?

我确定必须有某种方法,但是PhantomJS的示例代码似乎没有任何解决此问题的示例。

Artjom B.

您没有指定使用PhantomJS从页面执行的内容。您使用PhantomJS打开页面,并且在PhantomJS中也执行在Chrome或Firefox中执行的所有JavaScript。它是没有“ head”的完整浏览器。

虽然有一些区别。单击下载链接不会触发下载。PhantomJS 1.x所基于的渲染引擎已有近4年的历史,因此某些页面的渲染方式有所不同,因为PhantomJS 1.x可能不支持该功能。(PhantomJS 2正在开发中,现在处于非官方的“ alpha”状态)

因此,您需要使用JavaScript或CoffeeScript编写用户在页面上进行的每次交互的脚本。您不调用页面函数。您可以操纵DOM元素来模拟用户与浏览器中的页面进行交互。由于PhantomJS API不提供类似于用户的高级功能,因此需要以一种粗略的方式来完成如果你想这些,你一定要看CasperJS这是建立在PhantomJS / SlimerJS的顶部。

在那里,你实际上有功能,如clickwaitfetchText,等。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章