首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >解析网页

解析网页
EN

Stack Overflow用户
提问于 2009-11-23 23:05:28
回答 3查看 5.8K关注 0票数 1

我有一个关于解析HTML页面的问题,具体的论坛,我想解析一个论坛或线程包含某些后标准,我还没有定义算法,因为我以前只解析过结构文本格式,用例可以通过手工复制和粘贴每个线程到程序中,或者插入像http://www.forums.com/forum/showthread.php?t=46875&page=3这样的URL并让程序解析页面。

鉴于这一切,我想知道:

  1. 可以在HTML页面上解析论坛线程吗?
  2. 做这件事的最好/最快/最简单的语言是什么?
  3. 如果我更喜欢Java,那么我需要哪些工具/库呢?
  4. 还有什么我该考虑的吗?
EN

回答 3

Stack Overflow用户

发布于 2009-11-23 23:13:41

1/是

2/使用一些紧凑的语言,如python或ruby来进行原型设计。

  • 对于python,有一个名为美汤的简洁的HTML/XML解析库。
  • 对于红宝石,你可以尝试:诺科吉里杏子

3/一个需要考虑的Java工具:htmlparser解析器

[4]如果您只对某些特定的文本或某些特殊类感兴趣,那么正则表达式可能就足够了。但是,只要您想深入了解内容的结构,您就需要某种模型来保存您的数据,因此需要一个解析器,在最好的情况下,它可以处理现实中html的不一致性。

票数 2
EN

Stack Overflow用户

发布于 2009-11-23 23:17:31

您可能希望查看某种类型的html解析库,而不是使用正则表达式来实现这一点。红宝石python有一些非常好的html解析器,但是快速的谷歌显示也有很多用于java的解析器。这些库的好处是,您不必使用正则表达式处理每一个边缘大小写/它们处理格式错误的html (根据您想要做什么,使用regexes这两种方法都是不可能的),并且它们还为您提供了处理数据的许多方法(例如,漂亮的soup允许您获取属于特定类的所有元素,或者使用其他css选择器来限制您想要处理的页面元素)。

就我个人而言,至少在一开始,我会从ruby或python开始,因为库是已知的,并且有很多关于使用它们的信息。此外,我发现在ruby或python中快速原型这些类型的东西比在jvm中更容易。如果有必要,您甚至可以在以后使用jruby或jython将该代码带到jvm中。

票数 1
EN

Stack Overflow用户

发布于 2009-11-23 23:09:08

  1. 正则表达式,任何味道。
  2. 可能是那个
  3. 外面有很多工具 为你做这件事.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1786689

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档