<分区>
一些用于 xml 的更简单的 perl dom 解析器的作者似乎不鼓励他们使用混合内容以支持 XML::LibXML。所以我现在开始学习 XML::LibXML 并正在寻找常用的食谱示例。考虑从网络上读取 (x)html 文档并对其进行操作。 (perl cookbook 2nd edition 已经有 10 年历史了,它在这里的覆盖面相对较弱。)我想我想从以下开始:
use XML::LibXML;
my $dom = XML::LibXML->load_xml( location => "fame-1-1.html", recover => 2 );
## recover=>2 is needed to allow valid html entities
初学者可以使用的好食谱示例包括
将 $dom 转换为 perl 数据结构。 Data::Dumper($dom) 没有给我带来任何特别有趣的东西。当然,我想转换两种方式:from 和 to。
漂亮地打印输出,也许有一些控制。
将 html 净化为 xhtml。
用逻辑进行转换。 (有使用单个 dom 元素做事的很好的例子,但我认为更通用。)例如,我如何操作两个连续的 dom 元素?我有一个 XAB。如果这样连续,我想向 sup 添加一个“类”或“样式”(例如,style="width:0")。
将所有类和样式分解为一个最小的模板样式表。
XML::LibXML 的其他“酷”和“简单”用途。
(留待后续编辑问题以响应有用的食谱)建议:
(a) 用递增的 id 枚举
- 中的每个
- (例如,
- ...
- ...)。可以用多个元素来完成
(b) 遍历多个标签(例如,按出现顺序打印出所有 li、dl 和 dt)
感谢 sample 。
/我是