用java解析海量html

s3fp2yjn  于 2021-07-13  发布在  Java
关注(0)|答案(2)|浏览(331)

关闭。这个问题需要细节或清晰。它目前不接受答案。
**想改进这个问题吗?**通过编辑这个帖子来添加细节并澄清问题。

5年前关门了。
改进这个问题
将html传递到java的最佳方法是什么?
具体来说,我需要遍历2tb的html文件(.warc格式,使用nutchwax),然后一次一个地将它们提供给我的java程序。
工作流程:
爬网
将页面发送到java程序
等待回答,然后继续爬行
问题:我是创建一个脚本来转义html中的所有特殊字符,然后将其作为参数传递,还是将其写入文件并传递文件路径,还是有更好的方法(记住,2tb的数据)?

xcitsw88

xcitsw881#

我认为您应该从以下页面查找html解析器:
html解析器的比较
创建脚本可能不是个好主意。你可能已经有内联css,javascript,转义引号了。这将是一个巨大的痛苦做正确的。以前,我曾试图写一个脚本,但发现它笨重。最后,我尝试与html解析器,它像一个魅力!

szqfcxe2

szqfcxe22#

你应该和jsoup一起做。
http://jsoup.org/
有了它,你可以很容易地提取出你想要的数据,比如url或链接,你可以使用一个简单的api,把它们输入到你的程序中。它也可以在多线程环境中使用,而且速度相当快。
也检查一下这个答案,会很有帮助的。
要比较JavaHTML解析器,请转到这里。
对于您的问题:
我是否创建一个脚本来转义html中的所有特殊字符,然后将其作为参数传递。
jsoup为你做这件事。如果您只需要html文档的文本,那么可能需要使用regex。
我是将其写入文件并传递文件路径,还是有更好的方法
是的,你可以把它作为一个字符串传递给你的程序。写2tb的文件是非常无效的。
请注意,无论您做什么,处理2000gbohhtml都需要很长时间!
希望这有帮助。

相关问题