diff --git a/rsshub/spiders/rssfilter/filter.py b/rsshub/spiders/rssfilter/filter.py index fa70b00..2bd2886 100644 --- a/rsshub/spiders/rssfilter/filter.py +++ b/rsshub/spiders/rssfilter/filter.py @@ -10,25 +10,23 @@ def parse(post): item['description'] = post.summary item['pubDate'] = post.published item['link'] = post.link + item['author'] = post.author if post.has_key('author') else '' return item def ctx(feed_url=''): - # tree = fetch(feed_url,headers=DEFAULT_HEADERS) - # title = tree.css('channel').css('title::text').get() - # description = tree.css('channel').css('description').get() - # posts = tree.css('item') - - feed = feedparser.parse(feed_url) - + res = requests.get(feed_url,headers=DEFAULT_HEADERS) + feed = feedparser.parse(res.text) title = feed.feed.title description = feed.feed.subtitle - + author = feed.feed.author if feed.feed.has_key('author') \ + else feed.feed.generator if feed.feed.has_key('generator') \ + else title posts = feed.entries - + return { 'title': title, 'link': feed_url, 'description': description, - 'author': feed.feed.author, + 'author': author, 'items': list(map(parse, posts)) } \ No newline at end of file diff --git a/rsshub/templates/main/atom.xml b/rsshub/templates/main/atom.xml index b3a62bf..d653a82 100644 --- a/rsshub/templates/main/atom.xml +++ b/rsshub/templates/main/atom.xml @@ -14,6 +14,7 @@ {{item.link}} <![CDATA[{{item.title|safe}}]]> + {{item.pubDate|default(now)}} {{item.pubDate|default(now)}}