Cache works, but needs a lot more work.

This commit is contained in:
2018-12-18 14:42:46 +01:00
parent 9bf1d22876
commit 9f9955a848
10 changed files with 176 additions and 61 deletions

View File

@@ -1,10 +1,21 @@
use scraper::{Html, Selector};
use crate::context::Context;
use crate::probe::Probe;
// http://konsumentinfo.se/telefonnummer/sverige/{}
pub struct KonsumentInfo;
impl Probe for KonsumentInfo {
fn search(&mut self, _: &str) {}
fn search(&mut self, ctx: &mut Context, number: &str) {
let body = if let Some(cache) = ctx.cache_get("konsument_info", &number) {
String::from_utf8(cache.data)
.unwrap()
} else {
reqwest::get(&format!("http://konsumentinfo.se/telefonnummer/sverige/{}", number))
.unwrap()
.text()
.unwrap()
};
ctx.cache_set("konsument_info", &number, body.as_bytes()).expect("wut?! why not?!");
}
}