2010-11-15 78 views
0

我需要用Java编写的Groovy +刮刀..刮通过CSS选择器

我在想,如果事情能够解析HTML文件,并选择通过简单的CSS选择我需要的信息(而不是经历了整个文档树和手动选择我需要)存在?类似于Nokogiri Ruby,只是为了让你知道我需要什么。

在此先感谢!

+0

我的第一个想法:最后,有人没有问正则表达式这个问题;)当然,这已经被详细讨论了。 – NotMe 2010-11-15 22:40:31

+0

可能重复的[HTML抓取选项?](http://stackoverflow.com/questions/2861/options-for-html-scraping) – NotMe 2010-11-15 22:40:38

+0

我一直在使用C#刮。我已经写了一个jQuery端口,但是我不敢在这里发布它,因为害怕因为自我推销而被投票遗忘。 – mpen 2010-11-17 05:13:15

回答

1

我通过使用Qt Webkit加载页面并包含JQuery来做类似的事情。

这是一个黑客攻击,但适用于我的用例。我需要一个不需要配置的解决方案 - 只需sudo apt-get install libqt4-webkit然后您就可以开始了。

0

如果你可以通过浏览器支持(如使用浏览器来渲染和创建页面),硒将是完美的。这将具有完全支持Ajax网站的额外好处。

如果不是,像webdriver可能会工作。

我只使用硒。

0

我使用Selenium RC + jQuery进行屏幕抓取。

示例代码:https://github.com/tszming/Selenium-Google-Scrapper

虽然我使用PHP作为客户端,但你可以使用任何你喜欢的语言实现它(只要它可以跟硒RC)。

我曾尝试过几个CSS选择器库,但说实话,最好的解析器是您的浏览器,Selenium RC方法并不快但非常可靠。