1
from flexget.plugin import register_plugin, register_parser_option
4
log = logging.getLogger('dump')
7
def dump(entries, debug=False):
8
"""Dump :entries: to stdout"""
12
#print yaml.safe_dump(entry)
15
if isinstance(value, basestring):
17
print '%-17s: %s' % (field, value.replace('\r', '').replace('\n', ''))
19
print '%-17s: %s (warning: unable to print)' % (field, repr(value))
20
elif isinstance(value, (int, float, list, dict)):
21
print '%-17s: %s' % (field, value)
23
print '%-17s: %s' % (field, value)
26
print '%-17s: [not printable] (%s)' % (field, value)
30
class OutputDump(object):
32
Dummy plugin for testing, outputs all entries to stdout
36
from flexget import validator
37
return validator.factory('boolean')
39
def on_feed_output(self, feed):
40
if not 'dump' in feed.config and not feed.manager.options.dump_entries:
42
#from flexget.utils.tools import sanitize
45
undecided = [entry for entry in feed.entries if not entry in feed.accepted]
47
print '-- Undecided: --------------------------'
48
dump(undecided, feed.manager.options.debug)
50
print '-- Accepted: ---------------------------'
51
dump(feed.accepted, feed.manager.options.debug)
53
print '-- Rejected: ---------------------------'
54
dump(feed.rejected, feed.manager.options.debug)
56
register_plugin(OutputDump, 'dump', builtin=True)
57
register_parser_option('--dump', action='store_true', dest='dump_entries', default=False, help='Display all feed entries')