Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import argparse
- from scripts.conversion_news import read_news
- from scripts.conversion_news import unpack_json
- from scripts.conversion_news import unpack_news
- from scripts.conversion_news import unpack_with_date
- from scripts.create_xml import create_fb2
- from scripts.rss_parser import find_news
- from scripts.write_logs import write_log
- import os.path
- def parse_args():
- parser = argparse.ArgumentParser(description='Pure Python command-line RSS reader')
- parser.add_argument('source', help='RRS URL', nargs='?')
- parser.add_argument('--verbose', action='store_true', help='Outputs verbose status message')
- parser.add_argument('--version', action='version', version='%(prog)s 0.4', help='Print version info')
- parser.add_argument('--json', action='store_true', help='Print result as JSON in stdout')
- parser.add_argument('--limit', type=int, help='Limit topics if this parameter provided')
- parser.add_argument('--date', type=str, help='Print news by publication date')
- parser.add_argument('--output-path', dest='output_path', type=str, help='Path to save fb2')
- parser.add_argument('--to-fb2', dest='to_fb2', action='store_true', help='Conversion news in fb.2')
- args = parser.parse_args()
- return args
- def validate_args(args, news):
- if args.source == 'date':
- if args.date:
- len_standard_date = 8
- len_date = len(args.date)
- if len_date == len_standard_date:
- if args.to_fb2 and args.output_path:
- path = args.output_path.replace('\\', '\\\\')
- return os.path.exists(path)
- elif args.to_fb2:
- return True
- else:
- return True
- else:
- return False
- else:
- return False
- else:
- if args.json:
- if not args.date and \
- args.version and \
- args.verbose and \
- args.to_fb2 and \
- args.output_path:
- if args.limit:
- max_len = len(news)
- if max_len <= args.limit:
- return True
- else:
- return False
- else:
- return True
- else:
- return False
- elif args.verbose:
- if not args.date and \
- args.version and \
- args.to_fb2 and \
- args.output_path and \
- args.limit and \
- args.json:
- return True
- else:
- return False
- elif args.limit:
- if not args.date and \
- args.version and \
- args.verbose and \
- args.to_fb2 and \
- args.output_path and \
- args.json:
- max_limit = len(news)
- if max_limit <= agrs.limit:
- return True
- else:
- return False
- elif args.to_fb2:
- if not args.date and \
- args.version and \
- args.verbose and \
- args.limit and \
- args.json:
- if args.output_path:
- path = args.output_path.replace('\\', '\\\\')
- return os.path.exists(path)
- else:
- return True
- else:
- return True
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement