我正在编写基于DJANGO的RSS/ATOM读取器,这是时区意识到的 - 我认为这是必要的。但是,有些网站使用TZ Naive格式(甚至是Big的格式 - Hello The Guardian),根据网站推断出适当的时区的最佳方法是什么?
根据网站推导适当的时区的最佳方法是什么?
您无法根据网站推导时区。可以从世界任何地方提供网站,并包含有关世界上任何地方或多个不同地方的内容。
我在DB中有RSS/Atom feed URL,这是我的起点。
您不能单独从URL中分辨出任何东西。但是,您可以假设URL点在有效的RSS或原子feed上,请获取feed的含量并检查其中包含的日期。
-
RSS规范在
<item>
元素上定义了pubDate
属性,在<channel>
元素上定义了可选的lastBuildDate
。两者都处于RFC 822日期格式。- 此格式可能包含
+/-HHMM
表格的时区偏移,也可能包含少数有限缩写的偏移,如第5节所定义的。
- 此格式可能包含
-
原子规范在每个
<entry>
元素上定义了published
元素,以及<feed>
元素上的updated
属性。两者都处于RFC 3339日期格式。-
此格式必须包含
+/-HH:MM
或Z
(用于UTC)的时区偏移。 -
请注意,此格式是ISO 8601
的特定配置文件
-
因此,您可以从通道/feed的时间戳或单个消息的时间戳中提取偏移。但是:
-
不能保证正确设置了时区偏移以开始。
-
源可能会或可能不会将数据标准化为UTC,在这种情况下,所有偏移均为零。
-
无论如何,偏移并不能唯一地标识时区。请参阅"时区!=偏移"在时区标签Wiki中。