Skip feed that can't get fetched

This commit is contained in:
2025-04-26 12:35:06 +02:00
parent 7dd2dedef7
commit 43b866d798

View File

@@ -1,4 +1,5 @@
use anyhow::{
bail,
Context,
Result,
};
@@ -15,6 +16,7 @@ use feed_rs::{
use reqwest::{
IntoUrl,
StatusCode,
Url,
};
@@ -39,6 +41,10 @@ fn fetch_feed(url: impl IntoUrl) -> Result<Feed> {
let r = reqwest::blocking::get(url)
.context("Failed to fetch feed")?;
if r.status() != StatusCode::OK {
bail!("Fetched feed returned unuseable status code {}", r.status());
}
let content = r.bytes()
.context("Failed to read feed contents")?;
@@ -108,7 +114,13 @@ fn main() -> Result<()> {
for feed_url in feed_file.urls {
println!("Loading feed {}", feed_url);
let feed_entries = fetch_feed(feed_url)?.entries;
let feed_entries = match fetch_feed(feed_url) {
Ok(feed) => feed.entries,
Err(e) => {
println!("\t{}, skipping", e);
continue;
},
};
for entry in feed_entries {
match make_feed_item(entry) {