From 7da57cadd6dbdfbee482bf6f4ebbd2037ed11952 Mon Sep 17 00:00:00 2001 From: Yuval Adam Date: Tue, 28 Jan 2014 00:24:55 +0200 Subject: Preload article thumbnails --- newsdiff/core/parsers/haaretz.py | 3 +++ newsdiff/core/tasks.py | 7 ++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/newsdiff/core/parsers/haaretz.py b/newsdiff/core/parsers/haaretz.py index 1b6747b..30eae33 100644 --- a/newsdiff/core/parsers/haaretz.py +++ b/newsdiff/core/parsers/haaretz.py @@ -8,6 +8,7 @@ from django.db import transaction from .base import HtmlSoupParser from ..models import HaaretzArticle, HaaretzImage +from ..tasks import preload_thumbnail from ..utils import get_file_from_url @@ -70,6 +71,8 @@ class HaaretzParser(HtmlSoupParser): article_image.image.save(name, image_file) article_image.save() + preload_thumbnail.delay(article_image.image, '150x120') + def clean_article_href(self, href): href = href.replace('.premium-', '').split('#')[0] return super(HaaretzParser, self).clean_article_href(href) diff --git a/newsdiff/core/tasks.py b/newsdiff/core/tasks.py index 784fd28..4646089 100644 --- a/newsdiff/core/tasks.py +++ b/newsdiff/core/tasks.py @@ -3,6 +3,7 @@ import logging from newsdiff.celery import app from newsdiff.core.parsers.haaretz import HaaretzParser from newsdiff.core.parsers.ynet import YnetParser +from sorl.thumbnail import get_thumbnail @app.task() def process_haaretz_homepage(): @@ -26,4 +27,8 @@ def process_ynet_homepage(): @app.task(rate_limit='12/m') def process_ynet_article(url): yp = YnetParser() - yp.process_article(url) \ No newline at end of file + yp.process_article(url) + +@app.task() +def preload_thumbnail(filename, size): + _im = get_thumbnail(filename, size) -- cgit v1.3.1