3 个稳定版本
新 1.1.2 | 2024 年 8 月 18 日 |
---|---|
1.1.0 | 2023 年 2 月 10 日 |
1.0.0 | 2022 年 5 月 19 日 |
在 解析器实现 中排名 592
每月下载量 115
45KB
870 行
VivinQ:来自 Vivino 数据的 wine 数据库
该项目基于 Python 项目 Viviner。
它准备了一个 URL 来查询 Vivinio API。您可以使用任何 HTTP 客户端进行请求。
使用方法
fn main() {
//get all wines from France and United States
let pl = vivinq::Payload{country_codes:Some(vec![String::from("fr"), String::from("us")]), min_rating:4.2, ..Default::default()};
let url: String = vivinq::get_url(&pl);
// perform your request
}
似乎,您不需要在 HTTP 请求中指定 USER_AGENT,您可以直接发送一个空字符串 User-Agent:
。
有效载荷在 lib.rs 中定义,参数是可选的
pub struct Payload {
/// "country_codes[]": "br","fr","us","de", ...
pub country_codes: Option<Vec<String>,
/// "food_ids[]": 20,
pub food_ids: Option<Vec<u16>>,
/// "grape_ids[]": 3,
pub grape_ids: Option<Vec<u16>>,
/// "grape_filter": "varietal",
pub grape_filter: Option<String>,
/// "min_rating": 3.7, from 0.0 to 5.0
pub min_rating: Option<f32>,
/// "order_by": "ratings_average",
pub order_by: Option<String>,
/// "order": "desc", or asc (true)
pub order: Option<bool>,
/// "price_range_min": 25,
pub price_range_min: Option<u32>,
/// "price_range_max": 100,
pub price_range_max: Option<u32>,
/// "region_ids[]": 383,
pub region_ids: Option<Vec<u32>>,
/// "wine_style_ids[]": 98,
pub wine_style_ids: Option<Vec<u16>>,
/// "wine_type_ids[]": 1,
/// "wine_type_ids[]": 2,
pub wine_type_ids: Option<u16>,
}
功能
serde
(默认启用)。它允许您使用 serde 反序列化 Vivino JSON。
依赖项
~0.5–1.3MB
~26K SLoC