def utf2ascii(src):
""" Return an ASCII encoded copy of the input UTF-8 string """
try:
- res = unicode(src, 'utf-8').encode('ascii', 'replace')
+ res = unicode(src, 'utf-8').encode('ascii', 'replace')
except UnicodeDecodeError:
res = None
return res
""" Purge RSSItem from feed, no more than max. """
if feed.items is None or len(feed.items) == 0:
return False
-
+
feed.items = feed.items[:max]
return True
feed.items.insert(0,
PyRSS2Gen.RSSItem(
- title,
+ title,
pubDate = msg['Date'],
# pubDate = now(),
description = description,
if not os.path.exists(settings.outdir):
sys.stderr.write("Outdir '%s' does not exists\n" % settings.outdir)
+ parser.print_help()
sys.exit(1)
if not os.path.exists(settings.datadir):
sys.stderr.write("Datadir '%s' does not exists\n" % settings.datadir)
+ parser.print_help()
sys.exit(1)
status_db = os.path.join(settings.datadir, db_filename)
feed_in_file = os.path.join(settings.outdir, inrss_filename)
feed_out_file = os.path.join(settings.outdir, outrss_filename)
- status.feed_in.write_xml(file(feed_in_file, "w+"), "utf-8")
- status.feed_out.write_xml(file(feed_out_file, "w+"), "utf-8")
+ try:
+ status.feed_in.write_xml(file(feed_in_file, "w+"), "utf-8")
+ status.feed_out.write_xml(file(feed_out_file, "w+"), "utf-8")
+ except IOError, why:
+ sys.stderr.write("Unable to write feeds: %s\n", why)
+ sys.exit(1)
status.queue = current_queue
- cPickle.dump(status, open(status_db, "w+"))
+ try:
+ cPickle.dump(status, open(status_db, "w+"))
+ except IOError, why:
+ sys.stderr.write("Unable to save status: %s\n", why)
+ sys.exit(1)
# vim:et:ts=4