Welut is a ebook converter
- ebook-convert:
$ sudo apt install calibre
- convert epub & mobi to pdf. - pdftocairo:
$ sudo apt install -y poppler-utils
- convert pdf to images
Welut is available directly from PyPI:
- Installing the package.
$ pip install welut
- Don't forget to add
'welut'
to your'INSTALLED_APPS'
.
# settings.py INSTALLED_APPS = [ .... 'welut', ]
- Doing makemigrations & migrate
./manage.py makemigrations welut ./manage.py migrate welut
WELUT_EXTENSIONS = ['.pdf', '.epub', '.mobi'] # support file extensions WELUT_REMOVED_EXTENSIONS = ['.pdf', '.epub', '.mobi'] # file to remove after uploaded WELUT_IMAGES_EXTENSION = '.png' # format images extension
You can using ForeignKey
or OneToOneField
.
from django.db import models from welut.models import EbookConverter class EBook(models.Model): title = models.CharField(max_length=200) ebook_file = models.ForeignKey(EbookConverter, related_name='ebook_file') created = models.DateTimeField(auto_now_add=True) modified = models.DateTimeField(auto_now=True) def __str__(self): return self.title def get_files(self): """ return list images of ebook per-page """ return self.ebook_file.get_files()
Templates
{% for img_url in object.get_files %} <img src="{{ MEDIA_URL }}{{ img_url }}"> {% endfor %}