#scraping #client #times #queue #website #parser #cached-client

queue_times

抓取队列时间网站的客户端

3个版本

0.0.4 2021年6月21日
0.0.3 2021年6月19日
0.0.2 2021年6月16日
0.0.1 2021年6月16日

46#scraping

MIT/Apache

29KB
436 代码行

queue_times 是一个用于从 队列时间网站 抓取数据的crate。

大多数使用此crate的用户会想要使用 client::CachedClientclient 中的另一个客户端。这可以通过特性 client 启用。

use queue_times::client::{Client, QueueTimesClient, CachedClient};

let client = CachedClient::default(); //Replace with `Client::new()` to remove caching if needed
let parks = client.get_park_urls().await?;
let cedar_point_waits = client.get_ride_times(parks.get("Cedar Point")?.to_owned()).await?;

let mille_wait = cedar_point_waits.iter().find(|r| r.name == "Millennium Force").unwrap();

println!("The current wait for Millennium Force is: {:?}", mille_wait.status)

parser 包含解析原始HTML中的游乐设施时间的结构体,并且可以扩展以解析队列时间的新版本或甚至其他网站(或任何其他内容)。


lib.rs:

queue_times 是一个用于从 队列时间网站 抓取数据的crate。

大多数使用此crate的用户会想要使用 client::CachedClientclient 中的另一个客户端。这可以通过特性 client 启用。

use queue_times::client::{Client, QueueTimesClient, CachedClient};

let client = CachedClient::default(); //Replace with `Client::new()` to remove caching if needed
let parks = client.get_park_urls().await?;
let cedar_point_waits = client.get_ride_times(parks.get("Cedar Point")?.to_owned()).await?;

let mille_wait = cedar_point_waits.iter().find(|r| r.name == "Millennium Force").unwrap();

println!("The current wait for Millennium Force is: {:?}", mille_wait.status)

parser 包含解析原始HTML中的游乐设施时间的结构体,并且可以扩展以解析队列时间的新版本或甚至其他网站(或任何其他内容)。

依赖项

~7–20MB
~332K SLoC