用于网页抓取JAVASCRIPT内容的语言


Language for web scraping JAVASCRIPT content

我认为主题问的问题,我通常使用PHP进行解析/网页抓取,但我真的很糟糕的时间抓取javascript大多数情况下,我做不到

ex:解析javascript执行时出现的div。

我读到RUBY,它有一个javascript的解析器库,所以问题是什么是程序的语言,一个网络抓取,将有效地废弃javascript生成的内容??这里有一个PHP库,就像用于解析javascript内容的ruby库一样?

这里有一些策略。根据您的需要,考虑以编程的方式实例化一个浏览器实例,您可以钩入并从中读取页面。

这个想法是,让浏览器完成工作,因为页面是为浏览器而不是你的机器人制作的。然后,你可以点击并使用浏览器插件将数据提供给你的主要应用程序运行的东西。

对于你需要的东西来说,这可能有点过头了。

您应该看看一些无gui/无标题的浏览器。有一些是为Java编写的。我没有找到PHP的。

看:

  • HTMLUnit
  • 高尔夫

您可以尝试使用Selenium之类的工具,它允许您自动执行浏览器任务。

另一方面,你可以详细说明js代码执行时发生了什么。例如,如果js代码通过post一些数据向服务器请求某些东西,您可以以常规方式模拟。

你应该看看PhantomJS和CasperJS(无头浏览器)。

在ruby世界中,运行Phantomjs的gem应该是poltergeist

这里也有另一篇关于ruby中一些选项的文章(但是它们并不都支持js)