From 692b719b90028eb374831d729d48b83e8f073774 Mon Sep 17 00:00:00 2001 From: kirbylife Date: Wed, 2 Oct 2024 19:37:23 -0600 Subject: [PATCH] Fix NEW versions Again AAAA --- src/scraper.rs | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/src/scraper.rs b/src/scraper.rs index 0cccaf9..c9a3b6c 100644 --- a/src/scraper.rs +++ b/src/scraper.rs @@ -122,24 +122,28 @@ pub fn search_crate(crate_name: String) -> Option { if elem.css_once("del").is_some() { None } else if elem.css_once(".new").is_some() { - let version = elem - .css_once("a") - .unwrap() - .content() - .lines() - .nth(2) - .unwrap() - .trim() - .to_string(); - let date = elem - .css_once("*") - .unwrap() - .content() - .lines() - .nth(2) - .unwrap() - .trim() - .to_string(); + let (version, date) = match elem.css_once("a") { + Some(a) => { + let version = a.content().lines().nth(2).unwrap().trim().to_string(); + let date = elem + .css_once("*") + .unwrap() + .content() + .lines() + .nth(2) + .unwrap() + .trim() + .to_string(); + (version, date) + } + None => { + let binding = elem.css_once("*").unwrap().content(); + let mut lines = binding.lines(); + let version = lines.nth(1).unwrap().trim().to_string(); + let date = lines.nth(1).unwrap().trim().to_string(); + (version, date) + } + }; Some(Version::new(version, date)) } else { let raw_data = elem.css_once("*").unwrap().content();