尝试使用python从RSS获取更新日期时获取NoneType

时间:2011-10-12 14:51:02

标签: python datetime date rss

我有以下代码,当我尝试从任何RSS提要中获取日期时使用效果很好(使用Universal Feed Parser):

for entry in RSS_FEED.entries:
    FEED_DATE=entry.updated_parsed
    FEED_DATE_STRING = datetime.fromtimestamp(mktime(FEED_DATE))
    FEED_DATE_STRING = str(FEED_DATE_STRING)
    FEED_DATE_STRING = Datetime.ParseDate(FEED_DATE_STRING).strftime('%a %b %d, %Y')

但在解析以下RSS格式时:

<item>
<title>Title</title>
<description>
Description
</description>
<lastBuildDate>Wed, 5 Oct 2011 03:11:00:00 +0700</lastBuildDate>
<pubDate>Wed, 5 Oct 2011 03:11:00:00 +0700</pubDate>
</item>

我收到日志文件中的错误:

  

FEED_DATE_STRING = datetime.fromtimestamp(mktime(FEED_DATE))   TypeError:参数必须是9项序列,而不是无

1 个答案:

答案 0 :(得分:0)

假设您正在使用feedparser包来解析rss:日志文件中出现错误的原因是您使用的是feedparser无法理解的日期格式。这意味着entry.updated_parsed将设置为None。这个问题似乎是时间领域的第四个要素。如果日期更改为:

Wed, 5 Oct 2011 03:11:00 +0700

然后feedparser正确处理它们。