format fixes
This commit is contained in:
@@ -62,8 +62,7 @@ impl XfreeProvider {
|
|||||||
);
|
);
|
||||||
vec![]
|
vec![]
|
||||||
}),
|
}),
|
||||||
options: vec![
|
options: vec![ChannelOption {
|
||||||
ChannelOption {
|
|
||||||
id: "sexuality".to_string(),
|
id: "sexuality".to_string(),
|
||||||
title: "Sexuality".to_string(),
|
title: "Sexuality".to_string(),
|
||||||
description: "Sexuality of the Videos".to_string(),
|
description: "Sexuality of the Videos".to_string(),
|
||||||
@@ -84,9 +83,7 @@ impl XfreeProvider {
|
|||||||
title: "Trans".to_string(),
|
title: "Trans".to_string(),
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
}],
|
||||||
},
|
|
||||||
],
|
|
||||||
nsfw: true,
|
nsfw: true,
|
||||||
cacheDuration: None,
|
cacheDuration: None,
|
||||||
}
|
}
|
||||||
@@ -138,13 +135,21 @@ impl XfreeProvider {
|
|||||||
let mut requester =
|
let mut requester =
|
||||||
crate::providers::requester_or_default(&options, module_path!(), "missing_requester");
|
crate::providers::requester_or_default(&options, module_path!(), "missing_requester");
|
||||||
// let _ = requester.get("https://www.xfree.com/", Some(Version::HTTP_2)).await;
|
// let _ = requester.get("https://www.xfree.com/", Some(Version::HTTP_2)).await;
|
||||||
let text = match requester.get_with_headers(&video_url, vec![
|
let text = match requester
|
||||||
|
.get_with_headers(
|
||||||
|
&video_url,
|
||||||
|
vec![
|
||||||
("Apiversion".to_string(), "1.0".to_string()),
|
("Apiversion".to_string(), "1.0".to_string()),
|
||||||
("Accept".to_string(), "application/json text/plain */*".to_string()),
|
(
|
||||||
|
"Accept".to_string(),
|
||||||
|
"application/json text/plain */*".to_string(),
|
||||||
|
),
|
||||||
("Referer".to_string(), "https://www.xfree.com/".to_string()),
|
("Referer".to_string(), "https://www.xfree.com/".to_string()),
|
||||||
],
|
],
|
||||||
Some(Version::HTTP_2),
|
Some(Version::HTTP_2),
|
||||||
).await {
|
)
|
||||||
|
.await
|
||||||
|
{
|
||||||
Ok(text) => text,
|
Ok(text) => text,
|
||||||
Err(e) => {
|
Err(e) => {
|
||||||
crate::providers::report_provider_error(
|
crate::providers::report_provider_error(
|
||||||
@@ -190,7 +195,9 @@ impl XfreeProvider {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
for post in json.get("body").and_then(|v| v.get("posts"))
|
for post in json
|
||||||
|
.get("body")
|
||||||
|
.and_then(|v| v.get("posts"))
|
||||||
.and_then(|p| p.as_array())
|
.and_then(|p| p.as_array())
|
||||||
.unwrap_or(&vec![])
|
.unwrap_or(&vec![])
|
||||||
{
|
{
|
||||||
@@ -239,14 +246,16 @@ impl XfreeProvider {
|
|||||||
.and_then(|v| v.as_array())
|
.and_then(|v| v.as_array())
|
||||||
.unwrap_or(&vec![])
|
.unwrap_or(&vec![])
|
||||||
.iter()
|
.iter()
|
||||||
.filter_map(|t|
|
.filter_map(|t| t.get("tag").and_then(|n| n.as_str()).map(|s| s.to_string()))
|
||||||
t.get("tag").and_then(|n| n.as_str()).map(|s| s.to_string()))
|
|
||||||
.collect::<Vec<String>>();
|
.collect::<Vec<String>>();
|
||||||
for tag in tags.iter() {
|
for tag in tags.iter() {
|
||||||
Self::push_unique(&self.categories, FilterOption {
|
Self::push_unique(
|
||||||
|
&self.categories,
|
||||||
|
FilterOption {
|
||||||
id: tag.clone(),
|
id: tag.clone(),
|
||||||
title: tag.clone(),
|
title: tag.clone(),
|
||||||
});
|
},
|
||||||
|
);
|
||||||
}
|
}
|
||||||
let uploader = post
|
let uploader = post
|
||||||
.get("user")
|
.get("user")
|
||||||
@@ -269,8 +278,7 @@ impl XfreeProvider {
|
|||||||
.unwrap_or_default()
|
.unwrap_or_default()
|
||||||
.to_string()
|
.to_string()
|
||||||
.parse::<f32>()
|
.parse::<f32>()
|
||||||
.unwrap_or(0.5625)
|
.unwrap_or(0.5625);
|
||||||
;
|
|
||||||
let video_item = VideoItem::new(
|
let video_item = VideoItem::new(
|
||||||
id.to_string(),
|
id.to_string(),
|
||||||
title,
|
title,
|
||||||
@@ -305,7 +313,16 @@ impl Provider for XfreeProvider {
|
|||||||
) -> Vec<VideoItem> {
|
) -> Vec<VideoItem> {
|
||||||
let page = page.parse::<u8>().unwrap_or(1);
|
let page = page.parse::<u8>().unwrap_or(1);
|
||||||
|
|
||||||
let res = self.to_owned().query(cache, page, &query.unwrap_or("null".to_string()), options, pool).await;
|
let res = self
|
||||||
|
.to_owned()
|
||||||
|
.query(
|
||||||
|
cache,
|
||||||
|
page,
|
||||||
|
&query.unwrap_or("null".to_string()),
|
||||||
|
options,
|
||||||
|
pool,
|
||||||
|
)
|
||||||
|
.await;
|
||||||
|
|
||||||
res.unwrap_or_else(|e| {
|
res.unwrap_or_else(|e| {
|
||||||
eprintln!("xfree error: {e}");
|
eprintln!("xfree error: {e}");
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ pub struct VideosRequest {
|
|||||||
pub networks: Option<String>, //
|
pub networks: Option<String>, //
|
||||||
pub stars: Option<String>, //
|
pub stars: Option<String>, //
|
||||||
pub categories: Option<String>,
|
pub categories: Option<String>,
|
||||||
pub duration: Option<String>
|
pub duration: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone)]
|
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone)]
|
||||||
|
|||||||
Reference in New Issue
Block a user