コード例 #1
0
ファイル: __init__.py プロジェクト: adrianrocamora/manga-dl
 def download(self, url, path_location, method='get'):
     if fs.is_file(path_location):
         raise FileExistsError('File %s exists!' % path_location)
     fs.make_dirs(fs.dirname(path_location))
     part = path_location + '.part'
     mode = 'wb'
     headers = self._headers.copy()
     if fs.is_file(part):  # resume
         part_size = fs.file_size(part)
         if ~part_size:
             mode = 'ab'
             headers['Range'] = 'bytes=%d-' % fs.file_size(part)
     with open(part, mode) as w:
         w.write(self.request(method, url, headers=headers).content)
     fs.rename(part, path_location)
コード例 #2
0
ファイル: __init__.py プロジェクト: adrianrocamora/manga-dl
 def _load_storage_cookies(self, domain: str = None) -> dict:
     cookies = {}
     if fs.is_file(self._cookies_file):
         with open(self._cookies_file, 'r') as f:
             cookies = json.loads(f.read())
     if domain is None:
         return cookies
     return cookies.get(domain, {})
コード例 #3
0
ファイル: __init__.py プロジェクト: adrianrocamora/manga-dl
 def _dump_storage_cookies(self, cookies: dict, domain: str = None):
     if domain is not None:
         all_cookies = self._load_storage_cookies()
         all_cookies.update({domain: cookies})
     else:
         all_cookies = cookies
     if fs.is_file(self._cookies_file):
         with open(self._cookies_file, 'w') as f:
             f.write(json.dumps(all_cookies))