Rust html解析 スクレイピング
scraper
神スクレイピングライブラリ
宣言
extern crate scraper;
use scraper::{Selector, Html};
htmlの用意
let html = r#"<html>...</html>#";
htmlのパース
let document = Html::parse_document(html);
cssセレクタの用意
let css = "head";
cssセレクタのパース
let selector = Selector::parse(css).unwrap();
スクレイピング
for node in document.select(&selector) {
//処理
}
node
・文字列として取り出す
node.value()
・属性を取得
node.value().attr("content").unwrap()
例
for node in document.select(&selector) {
let content = node.value().attr("content").unwrap_or("");
let i = content.find("charset=");
let charset = match i {
Some(i) => {
&content[i+8..]
},
_ => ""
};
println!("{}", charset);
}
html取得
エンコーディング
Author And Source
この問題について(Rust html解析 スクレイピング), 我々は、より多くの情報をここで見つけました https://qiita.com/miyase256/items/ee13f55ff46fe8b3e516著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .