What is "scr"?
This is simplified fork of crates reqwest = {version = "0.11", features = ["blocking"]} and scraper = "0.17.1" which working together. Also are system pub struct std::path::Path, pub struct std::fs::File and pub fn std::fs::write.
"How use last stable version of scr in app?"
# Cargo.toml
[dependencies]
scr = "1.0.0"Examples
-
parse site
use scr::Scraper;
fn main() {
let scraper = Scraper::new("scrapeme.live/shop/");
let element = scraper.get_el("main#main>ul>li.product>a>h2");
assert_eq!(element.inner_html(), "Bulbasaur")
}-
parse fragment of site
use scr::Scraper;
fn main() {
let scraper = Scraper::new("scrapeme.live/shop/");
let fragment = scraper.get_text_once("main#main>ul>li.product>a");
let new_scraper = Scraper::from_fragment(fragment.as_str());
let element = new_scraper.get_el("a");
assert_eq!(element.inner_html(), "Bulbasaur")
}-
download file
use scr::FileLoader;
fn main() {
let file_loader = FileLoader::new(
"scrapeme.live/wp-content/uploads/2018/08/011.png",
"./data/some_png.png"
).unwrap();
assert_eq!(
file_loader.file
.file_name().unwrap()
.to_str().unwrap(),
"some_png.png"
);
}