pub struct VideoRequestParam {
pub bvid: String,
pub cid: String,
pub qn: Quality,
pub fnval: Fnval,
pub fourk: bool,
/* private fields */
}Expand description
视频信息请求参数
通过 VideoRequestParamBuilder 构造,签名相关字段自动计算。
Fields§
§bvid: String§cid: String§qn: Quality§fnval: Fnval§fourk: boolImplementations§
Source§impl VideoRequestParam
impl VideoRequestParam
Sourcepub fn to_query_string(&self) -> String
pub fn to_query_string(&self) -> String
Examples found in repository?
examples/show_video_info_raw.rs (line 20)
10async fn main() -> Result<(), Box<dyn Error>> {
11 let account = login::get_account().await?;
12 let bili_client = BiliClient::new(&account)?;
13 let bvid = extract_bv_id(
14 "https://www.bilibili.com/video/BV17W411e7VL/?spm_id_from=333.337.search-card.all.click&vd_source=8bd37d9aaf81178ae3e80214a1c8e367",
15 )?;
16 let vrp = VideoRequestParamBuilder::new(&bvid, &bili_client)
17 .await?
18 .build(&bili_client)
19 .await?;
20 let url = format!("{}?{}", VIDEO_DOWNLOAD_URL, vrp.to_query_string());
21 let resp: Value = bili_client.get(&url).send().await?.json().await?;
22
23 let json_str = serde_json::to_string_pretty(&resp)?;
24 tokio::fs::create_dir_all("output").await?;
25 tokio::fs::write("output/video_example.json", json_str).await?;
26 println!("The res is outputed to output/video_example.json");
27 Ok(())
28}Auto Trait Implementations§
impl Freeze for VideoRequestParam
impl RefUnwindSafe for VideoRequestParam
impl Send for VideoRequestParam
impl Sync for VideoRequestParam
impl Unpin for VideoRequestParam
impl UnsafeUnpin for VideoRequestParam
impl UnwindSafe for VideoRequestParam
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more