From 804dffc81a6f340b0d07efe444bdecb4ad1621b7 Mon Sep 17 00:00:00 2001 From: tarsin Date: Wed, 14 Jun 2023 10:30:07 +0800 Subject: [PATCH] Cleanup rust parser --- app/src/main/rust/src/lib.rs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/app/src/main/rust/src/lib.rs b/app/src/main/rust/src/lib.rs index 508fb00ad..21fe20e49 100644 --- a/app/src/main/rust/src/lib.rs +++ b/app/src/main/rust/src/lib.rs @@ -11,11 +11,9 @@ fn parse_limit(body: &str) -> Option> { let html2 = home_box.inner_html(parser); let dom2 = tl::parse(&*html2, tl::ParserOptions::default()).ok()?; let parser = dom2.parser(); - let mut iter = dom2.query_selector("strong")?; - let v1 = iter.next()?.get(parser)?.inner_text(parser).parse::().unwrap_or(0); - let v2 = iter.next()?.get(parser)?.inner_text(parser).parse::().unwrap_or(0); - let v3 = iter.next()?.get(parser)?.inner_text(parser).parse::().unwrap_or(0); - Some(vec![v1, v2, v3]) + let iter = dom2.query_selector("strong")?; + let vec: Vec = iter.filter_map(|e| Some(e.get(parser)?.inner_text(parser).parse::().ok()?)).collect(); + Some(vec) } #[no_mangle]