use scraper::{Html, Selector};
use super::super::types::*;
pub fn parse_biometric_data(html: String) -> Vec<BiometricRecord> {
let document = Html::parse_document(&html);
let rows_selector = Selector::parse("tr").unwrap();
let mut records: Vec<BiometricRecord> = Vec::new();
for row in document.select(&rows_selector).skip(1) {
let cells: Vec<_> = row.select(&Selector::parse("td").unwrap()).collect();
if cells.len() >= 4 {
let record = BiometricRecord {
serial: cells[0]
.text()
.collect::<Vec<_>>()
.join("")
.trim()
.replace("\t", "")
.replace("\n", ""),
date: cells[1]
.text()
.collect::<Vec<_>>()
.join("")
.trim()
.replace("\t", "")
.replace("\n", ""),
in_time: cells[2]
.text()
.collect::<Vec<_>>()
.join("")
.trim()
.replace("\t", "")
.replace("\n", ""),
location: cells[3]
.text()
.collect::<Vec<_>>()
.join("")
.trim()
.replace("\t", "")
.replace("\n", ""),
day: String::new(),
out_time: String::new(),
duration: String::new(),
};
records.push(record);
}
}
records
}