2010-10-08 69 views
1

我发现了一个项目,jaxer,它在服务器端嵌入了Firefox的JavaScript引擎,因此它可以很好地解析HTML服务器端。但是,这个项目似乎已经死了。这对于抓取网页来解析HTML &提取数据非常有用。是否有服务器端的dom引擎适合爬行?

是否有一些新技术可用于提取信息?

回答

0

我过去所做的是使用Selenium RC来控制代码的网络浏览器(通常是Firefox),以使用真实的网络浏览器加载和解析网站。

这很酷的事情是,你主要是用你熟悉的语言编写代码,无论是Perl,Ruby还是C#。但要充分利用Selenium的力量,你仍然需要知道和写javascript。

1

另一个有趣的方法是使用node.js结合jsdomnode-htmlparser加载页面并解析JavaScript。目前它还没有开箱即用,但Dav Glass(来自雅虎)已经有success running YUI in node.js使用该组合的修改版本。

这很有趣,如果你认为没有什么东西足够好,你想实现自己的。如果是这样,它将成为一个优秀的开源项目。

+0

注意:我将此作为单独的答案添加,因为它与我以前的答案完全不同。 – slebetman 2010-10-08 17:21:20

0

我已经在python + pywebkitgtk + javascript中编写了一个支持js的爬行器,取得了一些成功。它比传统的抓取工具慢得多,但它可以完成工作,并可以做很酷的工作,比如制作屏幕截图和拾取被js注入“遮蔽”的内容。

有与这里的一些示例代码像样的文章:

http://blog.motane.lu/2009/06/18/pywebkitgtk-execute-javascript-from-python/

0

ItsNat是不是JavaScript是基于Java类似Jaxer的主要区别。

相关问题