#flight #live #pricing #api #sorting #query-legs #query-leg

skyscanner

Skyscanner Flights 实时定价 API (3.0) 的实现

1 个不稳定版本

0.1.0 2023 年 8 月 6 日

#20 in #pricing

MIT/Apache

22KB
525 代码行

skyscanner

Crates.io Docs.rs

目前,实现 Skyscanner Flights 实时定价 API (3.0)。

https://developers.skyscanner.net/api/flights-live-pricing#tag/FlightsService/operation/FlightsService_CreateSearch

基础版,但大多数类型良好。对我很有用。欢迎贡献/分叉/提问。

几乎没有文档,但使用简单

设置环境变量 SKYSCANNER_API_KEY

    let req = CreateRequest {
        query_legs: vec![QueryLeg {
            origin_place_id: "LAX".into(),
            destination_place_id: "BER".into(),
            date: Local::now().date_naive() + Duration::days(2),
        }],
        ..Default::default()
    };

    let mut str = pin!(stream_search(req));

    while let Some(resp) = str.next().await {
        let content = resp.unwrap();

        for itin in content.sorted(resp::LiveSortingOption::Cheapest).take(5) {
            println!("{}", content.format_itinerary(&itin));
        }

        println!("====more?...");
    }

依赖项

~6–20MB
~256K SLoC