Perl 如何可视化/漂亮地打印HTML DOM树?

Perl 如何可视化/漂亮地打印HTML DOM树?,perl,xpath,mechanize,html-tree,Perl,Xpath,Mechanize,Html Tree,现在,我可以通过访问id导航网页并通过访问id获取信息,因此我只能通过读取DOM来发现HTML树的布局。Mechanize捕获的内容是非结构化HTML,对人眼不好 使用Firebug来确定我的身份是一种典型的方法吗?一旦我得到了id,我就可以开始了,只是我有几个id和带有更多id的页面要查找,我希望得到(转储、打印等)DOM的格式化布局,以便更容易发现。虽然理所当然,但Firebug也让它变得相当简单。我只是想知道我是否错过了一个更简单的方法 我使用Oxygen IDE的XML Develope

现在,我可以通过访问id导航网页并通过访问id获取信息,因此我只能通过读取DOM来发现HTML树的布局。Mechanize捕获的内容是非结构化HTML,对人眼不好

使用Firebug来确定我的身份是一种典型的方法吗?一旦我得到了id,我就可以开始了,只是我有几个id和带有更多id的页面要查找,我希望得到(转储、打印等)DOM的格式化布局,以便更容易发现。虽然理所当然,但Firebug也让它变得相当简单。我只是想知道我是否错过了一个更简单的方法


我使用Oxygen IDE的XML Developer进行XPath的最新开发: 这是一个为期30天的试用型工具,但您也可以搜索XPath visualizer

据我所知,它并没有为你设想一棵树(也许有一个面板在做这件事)。但它提供了一些智能完整的功能,帮助您了解在任何时候都有哪些节点可用。这对于XPath来说是相当大的,因为很难知道解析器轴心真正指向哪里

如果您需要文本,(随libxml2提供)做得不错

如果你想要一棵树,把它弄乱,在GUI中测试各种表达式,那么他就是你最好的新朋友

注意:由于这两个工具都依赖于libxml,请替换为以确保兼容性。这样计算XPath也会更快


如果您了解Javascript/JQuery,那么也可以安装。然后,您可以在FireBug中测试CSS表达式,并将它们与通过CSS表达式选择HTML的模块一起使用,例如


我真的很感谢您提供的信息。感谢您分享来之不易的知识。现在,为了推广其他SO贡献,我将保留复选标记。您好@daxim您能看一下这个问题吗?谢谢@daxim:我发现有一个名为XPath visualizer的免费软件也很有用: