1
0
mirror of https://github.com/mikf/gallery-dl.git synced 2024-11-25 04:02:32 +01:00

add option to sleep before each download

This commit is contained in:
Mike Fährmann 2017-12-04 17:06:17 +01:00
parent 300346ecdf
commit 4fb6803fa6
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88
5 changed files with 28 additions and 0 deletions

View File

@ -1,6 +1,12 @@
# Changelog
## Unreleased
- Added the ``-r/--limit-rate`` command-line option to set a maximum download rate
- Added the ``--sleep`` command-line option to specify the number of seconds to sleep before each download
- Updated `gelbooru` to no longer use their now disabled API
- Fixed extraction issues for `hentai2read` and `khinsider`
- Removed the deprecated `--images` and `--chapters` options
- Removed the ``mangazuki`` module
## 1.0.2 - 2017-11-24
- Added an option to set a [custom user-agent string](https://github.com/mikf/gallery-dl/blob/master/docs/configuration.rst#extractoruser-agent)

View File

@ -270,6 +270,15 @@ Description Controls the behavior when downloading a file whose filename
=========== =====
extractor.*.sleep
----------------
=========== =====
Type ``float``
Default ``0``
Description Number of seconds to sleep before each download.
=========== =====
extractor.*.username & .password
--------------------------------
=========== =====

View File

@ -1,6 +1,7 @@
{
"base-directory": "/tmp/",
"netrc": false,
"downloader":
{
"part": true,
@ -15,6 +16,9 @@
},
"extractor":
{
"skip": true,
"sleep": 0,
"pixiv":
{
"user":

View File

@ -7,6 +7,7 @@
# published by the Free Software Foundation.
import sys
import time
import json
import hashlib
from . import extractor, downloader, config, util, output, exception
@ -137,6 +138,7 @@ class DownloadJob(Job):
def __init__(self, url, parent=None):
Job.__init__(self, url, parent)
self.pathfmt = util.PathFormat(self.extractor)
self.sleep = self.extractor.config("sleep")
self.downloaders = {}
self.out = output.select()
@ -146,6 +148,8 @@ class DownloadJob(Job):
if self.pathfmt.exists():
self.out.skip(self.pathfmt.path)
return
if self.sleep:
time.sleep(self.sleep)
dlinstance = self.get_downloader(url)
dlinstance.download(url, self.pathfmt)

View File

@ -150,6 +150,11 @@ def build_parser():
metavar="SECONDS", action=ConfigAction, dest="timeout", type=float,
help="Timeout for HTTP connections (defaut: 30s)",
)
downloader.add_argument(
"--sleep",
metavar="SECONDS", action=ConfigAction, dest="sleep", type=float,
help="Number of seconds to sleep before each download",
)
downloader.add_argument(
"--no-part",
action=ConfigConstAction, nargs=0, dest="part", const=False,