Похоже, что http://portland.beerandblog.com/feed/atom/ испорчен (как и RSS-каналы 0.92 и 2.0).Неполадка получения даты с помощью универсального анализатора подачи
Универсальный пул подачи (последняя версия от http://code.google.com/p/feedparser/source/browse/trunk/feedparser/feedparser.py?spec=svn295&r=295) не видит никаких дат.
<title>Beer and Blog Portland</title>
<atom:link href="http://portland.beerandblog.com/feed/" rel="self" type="application/rss+xml" />
<link>http://portland.beerandblog.com</link>
<description>Bloggers helping bloggers over beers in Portland, Oregon</description>
<pubDate>Fri, 19 Jun 2009 22:54:57 +0000</pubDate>
<generator>http://wordpress.org/?v=2.7.1</generator>
<language>en</language>
<sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<item>
<title>Widmer is sponsoring our beer for the After Party!!</title>
<link>http://portland.beerandblog.com/2009/06/19/widmer-is-sponsoring-our-beer-for-the-after-party/</link>
<comments>http://portland.beerandblog.com/2009/06/19/widmer-is-sponsoring-our-beer-for-the-after-party/#comments</comments>
<pubDate>Fri, 19 Jun 2009 22:30:35 +0000</pubDate>
<dc:creator>Justin Kistner</dc:creator>
<category><![CDATA[beer]]></category>
Я пытаюсь
try: published = e.published_parsed except: try: published = e.updated_parsed except: published = e.created_parsed
и терпит неудачу, потому что я не могу получить дату.
Любые мысли о том, как извлечь дату разумным образом?
Спасибо!
Ссылка, которую вы указали, имеет этот тег, 2009-06-19T22: 54: 57Z , который при анализе (updated_parsed) дает этот Python 9-кортеж: (2009, 6, 19, 22, 54, 57, 4 , 170, 0), который, как представляется, является разумным способом для извлечения даты. –
bernie
Спасибо за ответ. Я ничего не получаю от d.updated_parsed. Я получаю d.modified Проблема в том, что для всего фида, а не для конкретных записей. С течением времени это, вероятно, имеет меньшее значение: я не делаю ничего в режиме реального времени, и новые статьи должны быть более или менее одинаковыми с самим каналом. – jdeibele
Тестирование, я получаю d.updated, но не d.updated_parsed. Что странно, поскольку http://www.feedparser.org/docs/reference-feed-updated.html говорит: «Этот элемент анализируется как дата и сохраняется в файле feed.updated_parsed». – jdeibele