Rust:
Analysering av HTML

Hvordan:

For å parse HTML i Rust, vil du ofte bruke scraper crate, som gir et høynivå grensesnitt for å traversere og manipulere HTML-dokumenter.

Først, legg til scraper i din Cargo.toml:

[dependencies]
scraper = "0.12.0"

Deretter, her er et enkelt eksempel som trekker ut alle lenke-URL-er fra en gitt HTML-streng:

extern crate scraper;

use scraper::{Html, Selector};

fn main() {
    let html = r#"
    <html>
    <body>
        <a href="http://example.com/1">Lenke 1</a>
        <a href="http://example.com/2">Lenke 2</a>
    </body>
    </html>
    "#;

    let document = Html::parse_document(html);
    let selector = Selector::parse("a").unwrap();

    for element in document.select(&selector) {
        let link = element.value().attr("href").unwrap();
        println!("Fant lenke: {}", link);
    }
}

Utdata:

Fant lenke: http://example.com/1
Fant lenke: http://example.com/2

I dette eksemplet parser vi et enkelt HTML-dokument for å finne alle <a>-elementene og trekke ut deres href-attributter, som effektivt skriver ut URL-ene til alle lenkene i dokumentet. Scraper-biblioteket forenkler HTML-parsing og valg av spesifikke elementer ved bruk av CSS-selektorer, noe som gjør det til et foretrukket valg for web scraping-oppgaver i Rust.