fixed bug with parsing views and rating
This commit is contained in:
@@ -198,10 +198,11 @@ impl SpankbangProvider {
|
|||||||
let duration_str = vid.iter().find(|s| s.contains("<span class=\"video-badge l\">")).unwrap().split("<span class=\"video-badge l\">").collect::<Vec<&str>>()[1].split("m<").collect::<Vec<&str>>()[0];
|
let duration_str = vid.iter().find(|s| s.contains("<span class=\"video-badge l\">")).unwrap().split("<span class=\"video-badge l\">").collect::<Vec<&str>>()[1].split("m<").collect::<Vec<&str>>()[0];
|
||||||
let duration: u32 = duration_str.parse::<u32>().unwrap_or(0) * 60;
|
let duration: u32 = duration_str.parse::<u32>().unwrap_or(0) * 60;
|
||||||
let view_and_rating_str: Vec<&str> = vid.iter().copied().filter(|s| s.contains("<span class=\"md:text-body-md\">")).collect();
|
let view_and_rating_str: Vec<&str> = vid.iter().copied().filter(|s| s.contains("<span class=\"md:text-body-md\">")).collect();
|
||||||
let views_str = view_and_rating_str[0];
|
let views_str = view_and_rating_str[0].split(">").collect::<Vec<&str>>()[1].split("K<").collect::<Vec<&str>>()[0];
|
||||||
let views = views_str.parse::<u32>().unwrap_or(0) * 1000;
|
let views = (views_str.parse::<f32>().unwrap_or(0.0) * 1000.0) as u32;
|
||||||
let rate_str = view_and_rating_str[1];
|
let rate_str = view_and_rating_str[1].split(">").collect::<Vec<&str>>()[1].split("%<").collect::<Vec<&str>>()[0];
|
||||||
let rating = rate_str.parse::<f32>().unwrap_or(0.0);
|
let rating = rate_str.parse::<f32>().unwrap_or(0.0);
|
||||||
|
println!("views_str: {}\nrate_str: {}", views_str, rate_str);
|
||||||
let url = self.url.clone() + vid.iter().find(|s| s.contains("<a href=\"/")).unwrap().split("<a href=\"/").collect::<Vec<&str>>()[1].split("\"").collect::<Vec<&str>>()[0];
|
let url = self.url.clone() + vid.iter().find(|s| s.contains("<a href=\"/")).unwrap().split("<a href=\"/").collect::<Vec<&str>>()[1].split("\"").collect::<Vec<&str>>()[0];
|
||||||
let id = url.split("/").collect::<Vec<&str>>()[0].to_string();
|
let id = url.split("/").collect::<Vec<&str>>()[0].to_string();
|
||||||
|
|
||||||
@@ -224,8 +225,10 @@ impl SpankbangProvider {
|
|||||||
let mut video_item = VideoItem::new(id, title, url.clone().to_string(), "spankbang".to_string(), thumb, duration)
|
let mut video_item = VideoItem::new(id, title, url.clone().to_string(), "spankbang".to_string(), thumb, duration)
|
||||||
.views(views)
|
.views(views)
|
||||||
.rating(rating)
|
.rating(rating)
|
||||||
|
.formats(vec![format])
|
||||||
.preview(preview);
|
.preview(preview);
|
||||||
items.push(video_item);
|
items.push(video_item);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user