[][src]Trait unhtml::VecFromHtml

pub trait VecFromHtml {
    type Elem: FromHtml;
    fn from_attr(
        selector_str: &str,
        attr: &str,
        root_element_ref: ElementRef
    ) -> Result<Vec<Self::Elem>, Error> { ... }
fn from_inner_text(
        selector_str: &str,
        root_element_ref: ElementRef
    ) -> Result<Vec<Self::Elem>, Error> { ... }
fn from_html_ref(
        selector_str: &str,
        root_element_ref: ElementRef
    ) -> Result<Vec<Self::Elem>, Error> { ... }
fn from_html(
        selector_str: &str,
        html: &str
    ) -> Result<Vec<Self::Elem>, Error> { ... } }

Deserialize Vec<T> from html where Timplemented FromHtml

Associated Types

Loading content...

Provided methods

fn from_attr(
    selector_str: &str,
    attr: &str,
    root_element_ref: ElementRef
) -> Result<Vec<Self::Elem>, Error>

Examples

use unhtml::scraper::{Html};
use unhtml::VecFromHtml;
let html = Html::parse_fragment(r#"
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <div id="test">
        <a href="1"></a>
        <a href="2"></a>
        <a href="3"></a>
    </div>
</body>
</html>
"#);
let results = Vec::<u8>::from_attr("#test > a", "href", html.root_element()).unwrap();
assert_eq!(1u8, results[0]);
assert_eq!(2u8, results[1]);
assert_eq!(3u8, results[2]);

fn from_inner_text(
    selector_str: &str,
    root_element_ref: ElementRef
) -> Result<Vec<Self::Elem>, Error>

Examples

use unhtml::scraper::{Html};
use unhtml::VecFromHtml;
let html = Html::parse_fragment(r#"
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <div id="test">
        <a>1</a>
        <a>2</a>
        <a>3</a>
    </div>
</body>
</html>
"#);
let results = Vec::<u8>::from_inner_text("#test > a", html.root_element()).unwrap();
assert_eq!(1u8, results[0]);
assert_eq!(2u8, results[1]);
assert_eq!(3u8, results[2]);

fn from_html_ref(
    selector_str: &str,
    root_element_ref: ElementRef
) -> Result<Vec<Self::Elem>, Error>

Examples

use unhtml::scraper::{Html};
use unhtml::VecFromHtml;
let html = Html::parse_fragment(r#"
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <div id="test">
        <a href="1"></a>
        <a href="2"></a>
        <a href="3"></a>
    </div>
</body>
</html>
"#);
let results = Vec::<String>::from_html_ref("#test > a", html.root_element()).unwrap();
assert_eq!(r#"<a href="1"></a>"#, results[0]);
assert_eq!(r#"<a href="2"></a>"#, results[1]);
assert_eq!(r#"<a href="3"></a>"#, results[2]);

fn from_html(selector_str: &str, html: &str) -> Result<Vec<Self::Elem>, Error>

Examples

use unhtml::VecFromHtml;
let results = Vec::<String>::from_html("#test > a", r#"
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <div id="test">
        <a href="1"></a>
        <a href="2"></a>
        <a href="3"></a>
    </div>
</body>
</html>
"#).unwrap();
assert_eq!(r#"<a href="1"></a>"#, results[0]);
assert_eq!(r#"<a href="2"></a>"#, results[1]);
assert_eq!(r#"<a href="3"></a>"#, results[2]);
Loading content...

Implementations on Foreign Types

impl<T> VecFromHtml for Vec<T> where
    T: FromHtml
[src]

type Elem = T

fn from_attr(
    selector_str: &str,
    attr: &str,
    root_element_ref: ElementRef
) -> Result<Vec<Self::Elem>, Error>
[src]

fn from_inner_text(
    selector_str: &str,
    root_element_ref: ElementRef
) -> Result<Vec<Self::Elem>, Error>
[src]

fn from_html_ref(
    selector_str: &str,
    root_element_ref: ElementRef
) -> Result<Vec<Self::Elem>, Error>
[src]

fn from_html(selector_str: &str, html: &str) -> Result<Vec<Self::Elem>, Error>[src]

Loading content...

Implementors

Loading content...