我有一个关于解析HTML页面的问题,具体的论坛,我想解析一个论坛或线程包含某些后标准,我还没有定义算法,因为我以前只解析过结构文本格式,用例可以通过手工复制和粘贴每个线程到程序中,或者插入像http://www.forums.com/forum/showthread.php?t=46875&page=3这样的URL并让程序解析页面。
鉴于这一切,我想知道:
发布于 2009-11-23 15:13:41
1/是
2/使用一些紧凑的语言,如python或ruby来进行原型设计。
3/一个需要考虑的Java工具:htmlparser解析器
[4]如果您只对某些特定的文本或某些特殊类感兴趣,那么正则表达式可能就足够了。但是,只要您想深入了解内容的结构,您就需要某种模型来保存您的数据,因此需要一个解析器,在最好的情况下,它可以处理现实中html的不一致性。
发布于 2009-11-23 15:17:31
您可能希望查看某种类型的html解析库,而不是使用正则表达式来实现这一点。红宝石和python有一些非常好的html解析器,但是快速的谷歌显示也有很多用于java的解析器。这些库的好处是,您不必使用正则表达式处理每一个边缘大小写/它们处理格式错误的html (根据您想要做什么,使用regexes这两种方法都是不可能的),并且它们还为您提供了处理数据的许多方法(例如,漂亮的soup允许您获取属于特定类的所有元素,或者使用其他css选择器来限制您想要处理的页面元素)。
就我个人而言,至少在一开始,我会从ruby或python开始,因为库是已知的,并且有很多关于使用它们的信息。此外,我发现在ruby或python中快速原型这些类型的东西比在jvm中更容易。如果有必要,您甚至可以在以后使用jruby或jython将该代码带到jvm中。
https://stackoverflow.com/questions/1786689
复制相似问题