meteo_date
This commit is contained in:
+16
-2
@@ -69,6 +69,19 @@ pub async fn meteo_weather() -> Result<MucWeather, reqwest::Error> {
|
|||||||
let precipitation_selector = Selector::parse("#messwerte-niederschlag").unwrap();
|
let precipitation_selector = Selector::parse("#messwerte-niederschlag").unwrap();
|
||||||
let row_selector = Selector::parse("tr").unwrap();
|
let row_selector = Selector::parse("tr").unwrap();
|
||||||
let cell_selector = Selector::parse("td").unwrap();
|
let cell_selector = Selector::parse("td").unwrap();
|
||||||
|
let h4_selector = Selector::parse("h4").unwrap();
|
||||||
|
|
||||||
|
let html_holder = fragment
|
||||||
|
.select(&h4_selector)
|
||||||
|
.next()
|
||||||
|
.map(|e| e.inner_html());
|
||||||
|
let date_time = html_holder
|
||||||
|
.as_ref()
|
||||||
|
.and_then(|html| html.lines().nth(0).and_then(|line| line.get(7..23)))
|
||||||
|
.map(|s| s.trim())
|
||||||
|
.unwrap_or("");
|
||||||
|
|
||||||
|
println!("{}", date_time);
|
||||||
|
|
||||||
if let Some(table) = fragment.select(&profile_selector).next() {
|
if let Some(table) = fragment.select(&profile_selector).next() {
|
||||||
for row in table.select(&row_selector) {
|
for row in table.select(&row_selector) {
|
||||||
@@ -128,13 +141,14 @@ pub async fn meteo_weather() -> Result<MucWeather, reqwest::Error> {
|
|||||||
|
|
||||||
let precipitation = (precipitation * 100.0).round() / 100.00;
|
let precipitation = (precipitation * 100.0).round() / 100.00;
|
||||||
let cur_date = Local::now();
|
let cur_date = Local::now();
|
||||||
let cur_date_formatted = format!("{}", cur_date.format("%Y-%m-%d %H:%M"));
|
let cur_date_formatted = format!("{}", cur_date.format("%d-%m-%Y %H:%M"));
|
||||||
let weather = MucWeather {
|
let weather = MucWeather {
|
||||||
temperature,
|
temperature,
|
||||||
pressure,
|
pressure,
|
||||||
humidity,
|
humidity,
|
||||||
precipitation,
|
precipitation,
|
||||||
date: cur_date_formatted
|
date: cur_date_formatted,
|
||||||
|
meteo_date: date_time.to_string()
|
||||||
};
|
};
|
||||||
println!("{:?}", weather);
|
println!("{:?}", weather);
|
||||||
Ok(weather)
|
Ok(weather)
|
||||||
|
|||||||
@@ -12,6 +12,8 @@ pub struct MucWeather {
|
|||||||
pub(crate) precipitation: f64,
|
pub(crate) precipitation: f64,
|
||||||
#[serde(rename = "Date")]
|
#[serde(rename = "Date")]
|
||||||
pub(crate) date: String,
|
pub(crate) date: String,
|
||||||
|
#[serde(rename = "MeteoDate")]
|
||||||
|
pub(crate) meteo_date: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
|
#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
|
||||||
|
|||||||
Reference in New Issue
Block a user