我找到了一个项目jaxer,它将Firefox的JavaScript引擎嵌入到服务器端,因此它可以非常好地解析HTML服务器端。但是,这个项目似乎已经死了。抓取HTML和网页对抓取网页非常有帮助。提取数据。
是否有一些新技术可用于提取信息?
答案 0 :(得分:1)
另一种有趣的方法是将node.js与jsdom和node-htmlparser结合使用来加载页面并解析其中的javascript。目前尚未真正开箱即用,但Dav Glass(来自雅虎)使用此组合的修改版本success running YUI in node.js。
如果您认为没有任何东西足够好并且您想要实现自己的,那么这很有趣。如果是这样,它将成为一个优秀的开源项目。
答案 1 :(得分:0)
我过去所做的是使用Selenium RC从代码控制网络浏览器(通常是firefox),以便使用真实的网络浏览器加载和解析网站。
关于这一点的一个很酷的事情是,你大多使用Perl或Ruby或C#所熟悉的语言进行编码。但是要充分利用Selenium的力量,你仍然需要知道并编写javascript。
答案 2 :(得分:0)
我在python + pywebkitgtk + javascript中编写了一个支持js的抓取工具已经取得了一些成功。它比传统的爬虫要慢得多,但它完成了工作,可以做一些很酷的东西,比如制作截图,然后选择被js注射“遮盖”的内容。
这里有一篇不错的文章,其中包含一些示例代码:
http://blog.motane.lu/2009/06/18/pywebkitgtk-execute-javascript-from-python/
答案 3 :(得分:0)
ItsNat与Jaxer类似,主要区别在于基于Java,而不是JavaScript。