urllib2 didn't handle chunked method

pull/94/head
eric 2019-06-13 16:20:05 -04:00
parent e3a5a50f34
commit 4969994a87
1 changed files with 8 additions and 9 deletions

View File

@ -1,14 +1,14 @@
import logging
import math
import re
import urllib
import urllib2
import uuid
from decimal import Decimal
import unicodedata
from urlparse import urlparse
import requests
from botocore.exceptions import ClientError
from PIL import ImageFile
from sorl.thumbnail import get_thumbnail
@ -1198,13 +1198,13 @@ class Ebook(models.Model):
return ebf.file
def get_archive_ebf(self): # returns an ebf
if not self.ebook_files.filter(asking=False):
if not self.ebook_files.filter(asking=False).count():
if not self.provider in good_providers:
return None
try:
r = urllib2.urlopen(self.url)
try:
self.filesize = int(r.info().getheaders("Content-Length")[0])
r = requests.get(self.url)
if r.status_code == 200:
self.filesize = len(r.content)
if self.save:
self.filesize = self.filesize if self.filesize < 2147483647 else 2147483647 # largest safe positive integer
self.save()
@ -1214,12 +1214,11 @@ class Ebook(models.Model):
format=self.format,
source=self.url
)
ebf.file.save(path_for_file(ebf, None), ContentFile(r.read()))
ebf.file.save(path_for_file(ebf, None), ContentFile(r.content))
ebf.file.close()
ebf.save()
return ebf
except IndexError:
# response has no Content-Length header probably a bad link
else:
logging.error('Bad link error: {}'.format(self.url))
except IOError:
logger.error(u'could not open {}'.format(self.url))