summaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/flickr.py
diff options
context:
space:
mode:
Diffstat (limited to 'gallery_dl/extractor/flickr.py')
-rw-r--r--gallery_dl/extractor/flickr.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/gallery_dl/extractor/flickr.py b/gallery_dl/extractor/flickr.py
index df252ee..e85a375 100644
--- a/gallery_dl/extractor/flickr.py
+++ b/gallery_dl/extractor/flickr.py
@@ -20,7 +20,6 @@ class FlickrExtractor(Extractor):
filename_fmt = "{category}_{id}.{extension}"
directory_fmt = ("{category}", "{user[username]}")
archive_fmt = "{id}"
- cookies_domain = None
request_interval = (1.0, 2.0)
request_interval_min = 0.5
@@ -45,7 +44,7 @@ class FlickrExtractor(Extractor):
self.log.debug("", exc_info=exc)
else:
photo.update(data)
- url = photo["url"]
+ url = self._file_url(photo)
yield Message.Directory, photo
yield Message.Url, url, text.nameext_from_url(url, photo)
@@ -57,6 +56,15 @@ class FlickrExtractor(Extractor):
def photos(self):
"""Return an iterable with all relevant photo objects"""
+ def _file_url(self, photo):
+ url = photo["url"]
+
+ if "/video/" in url:
+ return url
+
+ path, _, ext = url.rpartition(".")
+ return path + "_d." + ext
+
class FlickrImageExtractor(FlickrExtractor):
"""Extractor for individual images from flickr.com"""
@@ -98,7 +106,7 @@ class FlickrImageExtractor(FlickrExtractor):
if isinstance(value, dict):
location[key] = value["_content"]
- url = photo["url"]
+ url = self._file_url(photo)
yield Message.Directory, photo
yield Message.Url, url, text.nameext_from_url(url, photo)