bugfixes
This commit is contained in:
@@ -206,7 +206,6 @@ impl HqpornerProvider {
|
||||
if let Some(cat) = self.categories.read().unwrap().iter().find(|c| c.title.to_ascii_lowercase() == search_string.to_ascii_lowercase()) {
|
||||
video_url = format!("{}/category/{}/{}", self.url, cat.id, page);
|
||||
}
|
||||
println!("Searching URL: {}", video_url);
|
||||
// Check our Video Cache. If the result is younger than 1 hour, we return it.
|
||||
let old_items = match cache.get(&video_url) {
|
||||
Some((time, items)) => {
|
||||
@@ -310,7 +309,10 @@ impl HqpornerProvider {
|
||||
.to_string();
|
||||
let duration = parse_time_to_seconds(raw_duration.as_str()).unwrap_or(0) as u32;
|
||||
|
||||
let (tags, formats) = self.extract_media(&video_url, &mut requester).await;
|
||||
let (tags, formats) = match self.extract_media(&video_url, &mut requester).await{
|
||||
Ok((t, f)) => (t, f),
|
||||
Err(_) => return Err(Error::from("Video media extraction failed")),
|
||||
};
|
||||
if formats.is_empty() {
|
||||
return Err(Error::from("No formats found for video"));
|
||||
}
|
||||
@@ -331,12 +333,13 @@ impl HqpornerProvider {
|
||||
&self,
|
||||
video_page_url: &str,
|
||||
requester: &mut Requester,
|
||||
) -> (Vec<String>, Vec<VideoFormat>) {
|
||||
) -> Result<(Vec<String>, Vec<VideoFormat>)> {
|
||||
let mut formats = vec![];
|
||||
let mut tags = vec![];
|
||||
let text = requester.get(&video_page_url).await.unwrap();
|
||||
let text = requester.get_raw_with_headers(&video_page_url, vec![("Referer".to_string(), "https://hqporner.com".to_string())])
|
||||
.await.unwrap().text().await.unwrap();
|
||||
if text.contains("Why do I see it?") {
|
||||
return (tags, formats);
|
||||
return Ok((tags, formats));
|
||||
}
|
||||
let stars_elements = text.split("icon fa-star-o").collect::<Vec<&str>>()[1]
|
||||
.split("</li>")
|
||||
@@ -392,6 +395,10 @@ impl HqpornerProvider {
|
||||
.text()
|
||||
.await
|
||||
.unwrap();
|
||||
match text2.split("<video ").collect::<Vec<&str>>().len() > 2 {
|
||||
false => return Err(Error::from("No video element found")),
|
||||
true => (),
|
||||
}
|
||||
let video_element = text2.split("<video ").collect::<Vec<&str>>()[2]
|
||||
.split("</video>")
|
||||
.collect::<Vec<&str>>()[0];
|
||||
@@ -416,7 +423,7 @@ impl HqpornerProvider {
|
||||
.format_note(title.clone()),
|
||||
);
|
||||
}
|
||||
(tags, formats)
|
||||
Ok((tags, formats))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user