160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
|
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
|
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
|
let url = link;
posts.insert(date, url.to_string());
}
};
},
Err(err) => match err {
rss::Error::InvalidStartTag => {
let feed = atom_syndication::Feed::read_from(&content[..])
.with_context(|| format!("Problem opening feed url:\n{}\n{}", &source.url, status))?;
for item in feed.entries() {
let date = item.published().unwrap();
let url = item.links()[0].href();
posts.insert(*date, url.to_string());
};
match atom_syndication::Feed::read_from(&content[..]) {
Ok(feed) => {
for item in feed.entries() {
let date = item.published().unwrap();
let url = item.links()[0].href();
posts.insert(*date, url.to_string());
};
},
Err(err) => {
bail!("Unsupported or mangled content:\n{:?}\n{:#?}\n{:#?}\n", &source.url, err, status)
},
}
},
rss::Error::Eof => (),
_ => bail!("Unsupported or mangled content:\n{:?}\n{:#?}\n{:#?}\n", &source.url, err, status)
}
};
for (date, url) in posts.iter() {
let post_url: Cow<str> = match source.url_re {
|