从内容中提取缩略图

时间:2016-01-28 04:19:26

标签: python django

您好我使用ckeditor生成内容,如果生成了图片,我会尝试获取图片的缩略图。 在我的models.py

from goose import Goose

    class Post(models.Model):
        content = RichTextUploadingField(config_name='default')


        def thumbnail(self):
            g = Goose()
            thumbnail = g.extract(content=self.content)
            return thumbnail

我以为我会用python鹅提取器提取图像,我认为这是正确的方法,但很快意识到我可能会接近错误。 在我的html文件中,

{{ post.content|safe }}

{{ post.thumbnail }}

内容生成如上,但我没有获得任何缩略图。我接近错了吗?还有其他方法我可以从用户通过wysiwyg编辑器制作的内容中提取图像

编辑:

def thumbnail(self, content):
    g = Goose()
    thumbnail = g.extract(content=self.content).top_image.src
    return thumbnail

在html中

       <img src="{{ post.thumbnail }}" />

1 个答案:

答案 0 :(得分:0)

Goose.extract()返回文章对象,而不是缩略图。尝试:

thumbnail = g.extract(raw_html=self.content).top_image.src

这将返回文章主图像的URL。然后,您可以在模板中使用它,如下所示:

<img src="{{ post.thumbnail }}">