gpt4 book ai didi

datetime - 为什么在使用请求时解析我的日期成功,但在使用 reqwests 时失败?

转载 作者:行者123 更新时间:2023-11-29 08:31:03 24 4
gpt4 key购买 nike

我有一个包含以下日期的字符串 2015-07-05T11:02:25+00:00

我使用下面的代码来解析它(使用 chrono crate)

    let pub_date = str::replace(entry.pub_date().unwrap(), "-0000", "+0000");
return DateTime::parse_from_rfc2822(&pub_date)
.unwrap_or_else(|e| {
panic!(
"pub_date for item {:?} (value is {:?}) can't be parsed. {:?}",
&entry, pub_date, e
)
})
.naive_utc();

当我使用请求箱获取该内容时,日期被正确解析。但是当我使用 reqwests crate 时,它​​失败并显示错误消息

[2019-09-07 10:48:45.472951 +02:00] INFO [rrss2imap::feed] src\feed.rs:152: There should be new entries, parsing HTML content
thread 'main' panicked at 'pub_date for item Item { title: Some("[Avis/BD] Capitaine Trèfle"), link: Some("https://fr.rec.arts.fantasy.narkive.com/Z2rKs6RJ/avis-bd-capitaine-trefle"), description: None, author: None, categories: [], comments: None, enclosure: None,
guid: None, pub_date: Some("2015-07-05T11:02:25+00:00"), source: None, content: None, extensions: {}, itunes_ext: None, dublin_core_ext: None } (value is "2015-07-05T11:02:25+00:00") can't be parsed. ParseError(Invalid)', src\feed.rs:236:17

如果我调试(使用 VSCode Rust 调试器),错误值只包含 Invalid (3 '\x3')。但我不明白它来自哪里......(我想这可能是某种编码问题,但它让我感到困惑,因为整个对象似乎完全正确)。

而且我不明白出了什么问题。有人知道吗?

最佳答案

事实证明,答案是一个简单的 RFC2282 不合规:源正在发送 2015-07-05T11:02:25+00:00。正如 RFC 所述,时区信息没有 : 这种格式。

关于datetime - 为什么在使用请求时解析我的日期成功,但在使用 reqwests 时失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57832200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com