Rechercher une page de manuel
Mojo::DOM.3pm
Langue: en
Version: 2010-08-16 (fedora - 01/12/10)
Section: 3 (Bibliothèques de fonctions)
Sommaire
NAME
Mojo::DOM - Minimalistic XML DOM Parser With CSS3 SelectorsSYNOPSIS
use Mojo::DOM; # Parse my $dom = Mojo::DOM->new; $dom->parse('<div><div id="a">A</div><div id="b">B</div></div>'); # Find my $b = $dom->at('#b'); print $b->text; # Iterate $dom->find('div[id]')->each(sub { print shift->text });
DESCRIPTION
Mojo::DOM is a minimalistic and very relaxed XML DOM parser with support for CSS3 selectors. Note that this module is EXPERIMENTAL and might change without warning!SELECTORS
These CSS3 selectors are currently implemented.- *
- Any element.
- E
-
my $title = $dom->at('title');
An element of type "E".
- E[foo]
-
my $links = $dom->find('a[href]');
An "E" element with a "foo" attribute.
- E[foo=bar]
-
my $fields = $dom->find('input[name="foo"]');
An "E" element whose "foo" attribute value is exactly equal to "bar".
- E[foo^=bar]
-
my $fields = $dom->find('input[name^="f"]');
An "E" element whose "foo" attribute value begins exactly with the string "bar".
- E[foo$=bar]
-
my $fields = $dom->find('input[name$="o"]');
An "E" element whose "foo" attribute value ends exactly with the string "bar".
- E:root
-
my $root = $dom->at(':root');
An "E" element, root of the document.
- E F
-
my $headlines = $dom->find('div h1');
An "F" element descendant of an "E" element.
- E > F
-
my $headlines = $dom->find('html > body > div > h1');
An "F" element child of an "E" element.
ATTRIBUTES
Mojo::DOM implements the following attributes.charset
my $charset = $dom->charset; $dom = $dom->charset('UTF-8');
Charset used for decoding XML.
tree
my $array = $dom->tree; $dom = $dom->tree(['root', ['text', 'lalala']]);
Document Object Model.
METHODS
Mojo::DOM inherits all methods from Mojo::Base and implements the following new ones.all_text
my $text = $dom->all_text;
Extract all text content from DOM structure.
at
my $result = $dom->at('html title');
Find a single element with CSS3 selectors.
attrs
my $attrs = $dom->attrs;
Element attributes.
children
my $children = $dom->children;
Children of element.
find
my $results = $dom->find('html title');
Find elements with CSS3 selectors.
$dom->find('div')->each(sub { print shift->text });
name
my $name = $dom->name; $dom = $dom->name('html');
Element name.
namespace
my $namespace = $dom->namespace;
Element namespace.
parent
my $parent = $dom->parent;
Parent of element.
parse
$dom = $dom->parse('<foo bar="baz">test</foo>');
Parse XML document.
replace
$dom = $dom->replace('<div>test</div>');
Replace elements.
replace_content
$dom = $dom->replace_content('test');
Replace element content.
root
my $root = $dom->root;
Find root element.
text
my $text = $dom->text;
Extract text content from element only, not including child elements.
to_xml
my $xml = $dom->to_xml;
Render DOM to XML.
SEE ALSO
Mojolicious, Mojolicious::Guides, <http://mojolicious.org>.Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre