def update(self, mark_read=False):
# Brad Frost's feed starts with a newline,
# throwing off feedparser.
try:
content = requests.get(self.url).content.strip()
except requests.exceptions.ConnectionError:
logger.error('Could not sync %s' % self.url)
return
data = feedparser.parse(content)
for entry in data["entries"][:25]:
obj, created = Entry.objects.get_or_create(
source=self,
url=entry["link"],
defaults={
"title": entry["title"],
"author": (entry.get("author") or
data["feed"].get("author") or
self.name),
"summary": entry["summary"],
"sent": mark_read,
})
self.last_updated = datetime.datetime.now(pytz.utc)
self.save()
评论列表
文章目录