in mozdownload/cli.py [0:0]
def cli(argv=None):
"""CLI entry point for mozdownload."""
kwargs = parse_arguments(argv or sys.argv[1:])
log_level = kwargs.pop('log_level')
logging.basicConfig(format='%(levelname)s | %(message)s', level=log_level)
logger = logging.getLogger(__name__)
# Configure logging levels for sub modules. Set to ERROR by default.
sub_log_level = logging.ERROR
if log_level == logging.getLevelName(logging.DEBUG):
sub_log_level = logging.DEBUG
logging.getLogger('redo').setLevel(sub_log_level)
logging.getLogger('requests').setLevel(sub_log_level)
logging.getLogger('thclient').setLevel(sub_log_level)
try:
scraper_type = kwargs.pop('scraper_type')
# If a URL has been specified use the direct scraper
if kwargs.get('url'):
scraper_type = 'direct'
build = factory.FactoryScraper(scraper_type, **kwargs)
if kwargs.get('print_url'):
logger.info(build.url)
else:
build.download()
except KeyboardInterrupt:
logger.error('Download interrupted by the user')