Ticket #292: output_download_py_content-encoding.patch
| File output_download_py_content-encoding.patch, 1.2 KB (added by flexget, 3 months ago) |
|---|
-
flexget/plugins/output_download.py
5 5 import logging 6 6 import shutil 7 7 import filecmp 8 import zlib 8 9 from flexget.plugin import * 9 10 from sqlalchemy import Column, String, Integer, DateTime 10 11 from flexget.manager import Base … … 176 177 177 178 mimetype = f.headers.gettype() 178 179 180 if f.headers.get('content-encoding') in ('gzip', 'x-gzip', 'deflate'): 181 decompressor = zlib.decompressobj(15+32) 182 else: 183 decompressor = None 184 179 185 # generate temp file, with random md5 sum .. 180 186 # url alone is not random enough, it has happened that there are two entries with same url 181 187 import hashlib … … 193 199 outfile = open(datafile, 'wb') 194 200 try: 195 201 while 1: 196 data = f.read(buffer_size) 202 if decompressor: 203 data = decompressor.decompress(f.read(buffer_size)) 204 else: 205 data = f.read(buffer_size) 197 206 if not data: 198 207 log.debug('wrote file %s' % datafile) 199 208 break
