def get_feed(self, feedid=None):
"""Returns a dictionary of feed details identified by the id
specified. If no id is specified, then the current feed is
detected and returned.
"""
if feedid is None:
# assume default
feedid = self.feedid
if not isinstance(feedid, int):
try:
feedid = int(feedid)
except (ValueError, TypeError):
# can't be typecasted to an integer
return {}
if feedid <= 0:
# No feed id defined
return {}
# Precompile Regulare Expression for Speed
feed_re = re.compile('^%s%s%d_([A-Z0-9_]+)$' % (
FEED_ENVIRO_ID,
FEEDID_ENVIRO_ID,
feedid,
))
self.logger.debug('Looking for %s%s%d_([A-Z0-9_]+)$' % (
FEED_ENVIRO_ID,
FEEDID_ENVIRO_ID,
feedid,
))
# Fetch Feed related content
return dict([(feed_re.match(k).group(1), v.strip()) \
for (k, v) in environ.items() if feed_re.match(k)])
评论列表
文章目录