diff options
| author | Sergey M․ <dstftw@gmail.com> | 2016-03-19 20:40:36 +0600 | 
|---|---|---|
| committer | Sergey M․ <dstftw@gmail.com> | 2016-03-19 20:40:36 +0600 | 
| commit | 52bb437e412726a37d585cf782c88bc8c8a042a4 (patch) | |
| tree | 79291cd642ba94a1566bcbca74bc476333359eee | |
| parent | 782b1b5bd1cdaaead6865dee5d300486e7dd8348 (diff) | |
[options] Add --fragment-retries option
| -rw-r--r-- | youtube_dl/__init__.py | 17 | ||||
| -rw-r--r-- | youtube_dl/options.py | 4 | 
2 files changed, 16 insertions, 5 deletions
| diff --git a/youtube_dl/__init__.py b/youtube_dl/__init__.py index 79b389840..737f6545d 100644 --- a/youtube_dl/__init__.py +++ b/youtube_dl/__init__.py @@ -144,14 +144,20 @@ def _real_main(argv=None):          if numeric_limit is None:              parser.error('invalid max_filesize specified')          opts.max_filesize = numeric_limit -    if opts.retries is not None: -        if opts.retries in ('inf', 'infinite'): -            opts_retries = float('inf') + +    def parse_retries(retries): +        if retries in ('inf', 'infinite'): +            parsed_retries = float('inf')          else:              try: -                opts_retries = int(opts.retries) +                parsed_retries = int(retries)              except (TypeError, ValueError):                  parser.error('invalid retry count specified') +        return parsed_retries +    if opts.retries is not None: +        opts.retries = parse_retries(opts.retries) +    if opts.fragment_retries is not None: +        opts.fragment_retries = parse_retries(opts.fragment_retries)      if opts.buffersize is not None:          numeric_buffersize = FileDownloader.parse_bytes(opts.buffersize)          if numeric_buffersize is None: @@ -299,7 +305,8 @@ def _real_main(argv=None):          'force_generic_extractor': opts.force_generic_extractor,          'ratelimit': opts.ratelimit,          'nooverwrites': opts.nooverwrites, -        'retries': opts_retries, +        'retries': opts.retries, +        'fragment_retries': opts.fragment_retries,          'buffersize': opts.buffersize,          'noresizebuffer': opts.noresizebuffer,          'continuedl': opts.continue_dl, diff --git a/youtube_dl/options.py b/youtube_dl/options.py index 9dd7a8034..822728afc 100644 --- a/youtube_dl/options.py +++ b/youtube_dl/options.py @@ -400,6 +400,10 @@ def parseOpts(overrideArguments=None):          dest='retries', metavar='RETRIES', default=10,          help='Number of retries (default is %default), or "infinite".')      downloader.add_option( +        '--fragment-retries', +        dest='fragment_retries', metavar='RETRIES', default=10, +        help='Number of retries for a fragment (default is %default), or "infinite" (DASH only)') +    downloader.add_option(          '--buffer-size',          dest='buffersize', metavar='SIZE', default='1024',          help='Size of download buffer (e.g. 1024 or 16K) (default is %default)') | 
