背景:
我正在使用HTML :: TreeBuilder来解析整个html页面,说“whole_page”以供参考。然后我使用新的TreeBuilder对象的继承parse_content方法(与whole_page相同)来解析一大块html,比如“html_to_insert”。 html_to_insert的根元素应该是<div>
标记。最终,需要将html_to_insert树插入到whole_page树中。
问题:
html_to_insert树包含<html>
,<head>
和<body>
标记,我显然不需要这些标记。我查看了HTML :: Parser以查看是否有可能解决问题的参数,但我找不到任何内容。
问题:
有没有一种简单的方法可以阻止parse方法用不需要的标签包装html_to_insert?知道我想要做什么,我是否向后做这个屁股(有更好的方法)吗?
感谢您的帮助。
答案 0 :(得分:3)
您可能希望查看HTML::Tree中的guts
方法。它仅将非隐式节点作为列表返回。
答案 1 :(得分:2)
如果您可以确保您的HTML符合XHTML标准,也就是说,它是一个合适的XML文档,您可以使用XML工具来完成这项工作。在过去,我使用XML :: Twig来完成这类工作,这样做有点容易。
当然,如果你从互联网上解析任意网页,你可能没有这种保证。