Welut
:wavy_dash: welut is django plugin to convert the .epub, .mobi or .pdf files as images. Usefull to manage e-library or e-commerce bassed on e-book system.
Install / Use
/learn @agusmakmun/WelutREADME
**Welut** is a ebook converter
Requirements
- ebook-convert:
$ sudo apt install calibre- convert epub & mobi to pdf. - pdftocairo:
$ sudo apt install -y poppler-utils- convert pdf to images
Installation
Welut is available directly from PyPI_:
- Installing the package.
::
$ pip install welut
2. Don't forget to add 'welut' to your 'INSTALLED_APPS'.
::
# settings.py
INSTALLED_APPS = [
....
'welut',
]
3. Doing makemigrations & migrate
::
./manage.py makemigrations welut
./manage.py migrate welut
Configuration (settings.py)
::
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
Usage
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 %}
Usage Preview
.. image:: https://raw.githubusercontent.com/agusmakmun/welut/master/welut_demo/media/welut-demo.png
.. _PyPI: https://pypi.python.org/pypi/welut
