3 个不稳定版本
0.4.1 | 2024年7月20日 |
---|---|
0.4.0 | 2024年7月20日 |
0.3.1 | 2024年7月19日 |
592 在 网页编程
每月341次下载
20KB
345 行
Strømpris
此 crate 是围绕 https://hvakostersttrommen.no 上托管的 Strømpris-API 的封装。
此 crate 提供了客户端的异步和阻塞版本,以及响应对象的强类型模型。
文档
用法
运行 cargo add strompris
将此 crate 添加到您的 Cargo.toml
文件。
示例
use strompris::blocking::Strompris;
use strompris::{PriceRegion, Date};
fn main() {
let date = Date::from_ymd_opt(2024, 1, 31).unwrap();
let client = Strompris::default();
let prices = client.get_prices(date, PriceRegion::NO1).unwrap();
for price in prices.iter() {
println!("From: {}", price.time_start.time());
println!("To: {}", price.time_end.time());
println!("Price: {:.2} NOK\n", price.nok_per_kwh);
}
}
lib.rs
:
此 crate 提供了 HvaKosterStrømmen 提供的 Strømpris API 的封装。
该 crate 设计得与 API 一样简单,因此只公开了一个方法:获取特定区域特定日期的价格的方法。
此 crate 提供了获取价格时的异步和阻塞方式。有关阻塞 API 的更多信息,请参阅阻塞模块。
有关 API 的更多信息,请参阅 www.hvakosterstrommen.no
。
使用 tokio 的示例
use strompris::{Strompris, PriceRegion, Date, Error};
#[tokio::main]
async fn main() -> Result<(), Error> {
let date = Date::from_ymd_opt(2024, 1, 31).unwrap();
let client = Strompris::default();
let prices = client.get_prices(date, PriceRegion::NO1).await?;
for price in prices.iter() {
println!("Price: {:.2}", price.nok_per_kwh);
println!("From: {}", price.time_start.time());
println!("To: {}", price.time_end.time());
}
Ok(())
}
依赖关系
~5–16MB
~228K SLoC