Koucha/koucha/src/lib.rs

22 lines
461 B
Rust
Raw Normal View History

2026-01-14 16:12:15 -08:00
use std::error::Error;
use reqwest::{
IntoUrl,
Client,
};
use rss::Channel as RawChannel;
pub struct Channel {
pub channel: rss::Channel,
}
pub async fn fetch_channel<T: IntoUrl>(
client: &Client, url: T) -> Result<Channel, Box<dyn Error>> {
let content = client.get(url)
.send().await?
.bytes().await?;
let raw_channel = RawChannel::read_from(&content[..])?;
println!("{}", raw_channel.title);
Ok(Channel { channel: raw_channel })
}