From 14860d874ac4f76274d9979685c9edba46c2050f Mon Sep 17 00:00:00 2001 From: Radek Czajka Date: Fri, 7 Sep 2012 13:30:29 +0200 Subject: [PATCH] Set User-Agent when downloading covers. --- apps/cover/models.py | 4 ++-- apps/cover/utils.py | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) create mode 100755 apps/cover/utils.py diff --git a/apps/cover/models.py b/apps/cover/models.py index 14026ac7..6900e78e 100644 --- a/apps/cover/models.py +++ b/apps/cover/models.py @@ -4,7 +4,6 @@ # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. # import re -from urllib2 import urlopen from urlparse import urljoin from django.conf import settings from django.core.files.base import ContentFile @@ -13,6 +12,7 @@ from django.db.models.signals import post_save from django.dispatch import receiver from django.utils.translation import ugettext_lazy as _ from django.contrib.sites.models import Site +from cover.utils import URLOpener class Image(models.Model): @@ -42,7 +42,7 @@ class Image(models.Model): @receiver(post_save, sender=Image) def download_image(sender, instance, **kwargs): if instance.pk and not instance.file: - t = urlopen(instance.download_url).read() + t = URLOpener().open(instance.download_url).read() instance.file.save("%d.jpg" % instance.pk, ContentFile(t)) \ No newline at end of file diff --git a/apps/cover/utils.py b/apps/cover/utils.py new file mode 100755 index 00000000..7615d222 --- /dev/null +++ b/apps/cover/utils.py @@ -0,0 +1,13 @@ +# -*- coding: utf-8 -*- +# +# This file is part of FNP-Redakcja, licensed under GNU Affero GPLv3 or later. +# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. +# +from urllib import FancyURLopener +from django.contrib.sites.models import Site + + +class URLOpener(urllib.FancyURLopener): + @property + def version(self): + return 'FNP Redakcja (http://%s)' % Site.objects.get_current() -- 2.20.1