shamela2epub


Nameshamela2epub JSON
Version 1.4.3 PyPI version JSON
download
home_pagehttps://github.com/yshalsager/shamela2epub/
SummaryA CLI and GUI tool to download a book on https://shamela.ws to an EPUB book.
upload_time2024-03-15 12:21:12
maintainer
docs_urlNone
authoryshalsager
requires_python>=3.12,<3.13
licenseGPL-3.0-only
keywords epub3 shamela book epub islamic
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # shamela2epub

> A CLI and GUI tool to download a book on [Shamela Library Website](https://shamela.ws) into an EPUB book.

[![en](https://img.shields.io/badge/README-English-AB8B64.svg)](README.md)
[![ara](https://img.shields.io/badge/README-Arabic-AB8B64.svg)](README.ar.md)

![logo](shamela2epub/assets/books-duotone.svg)

[![Codacy Badge](https://app.codacy.com/project/badge/Grade/901b1123964c4468a88b0cfcde9147fe)](https://www.codacy.com/gh/yshalsager/shamela2epub/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=yshalsager/shamela2epub&amp;utm_campaign=Badge_Grade)
[![PyPI version](https://badge.fury.io/py/shamela2epub.svg)](https://pypi.org/project/shamela2epub/)
[![PyPI Downloads](https://static.pepy.tech/personalized-badge/shamela2epub?period=total\&units=international_system\&left_color=grey\&right_color=blue\&left_text=Total%20Downloads%20\(PyPI\))](https://pepy.tech/project/shamela2epub)

[![GitHub release](https://img.shields.io/github/release/yshalsager/shamela2epub.svg)](https://github.com/yshalsager/shamela2epub/releases/)
[![GitHub Downloads](https://img.shields.io/github/downloads/yshalsager/shamela2epub/total.svg)](https://github.com/yshalsager/shamela2epub/releases/latest)

[![made-with-python](https://img.shields.io/badge/Made%20with-Python%203-3776AB?style=flat\&labelColor=3776AB\&logo=python\&logoColor=white\&link=https://www.python.org/)](https://www.python.org/)
[![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/)

[![PayPal](https://img.shields.io/badge/PayPal-Donate-00457C?style=flat\&labelColor=00457C\&logo=PayPal\&logoColor=white\&link=https://www.paypal.me/yshalsager)](https://www.paypal.me/yshalsager)
[![LiberaPay](https://img.shields.io/badge/Liberapay-Support-F6C915?style=flat\&labelColor=F6C915\&logo=Liberapay\&logoColor=white\&link=https://liberapay.com/yshalsager)](https://liberapay.com/yshalsager)

**Disclaimer:**

* This software is freeware and open source and is only intended for personal or educational use.

## Installation

### From PyPI

```bash
pip install shamela2epub
```

### From the cloned repository

```bash
# Using poetry
poetry install

# or using pip 18+
pip install .
```

## Usage

### Command-line Tool (CLI)

```bash
python3 -m shamela2epub download URL
# python3 -m shamela2epub download "https://shamela.ws/book/823"

python3 -m shamela2epub download --help
Usage: python -m shamela2epub download [OPTIONS] URL

  Download Shamela book form URL to ePub

Options:
  -o, --output TEXT  ePub output book custom name
  --help             Show this message and exit.
```

### Graphical User Interface (GUI)

![gui](gui.png)

* If you installed the package from PyPI, you can use the following command:

```bash
shamela2epubgui
```

* If you downloaded the latest gui exe file from releases you can open it normally and use it.
* Otherwise, use normal python command:

```bash
python3 -m shamela2epub gui
```

## Features

* CLI and GUI!
* Creates an [EPUB3](https://www.w3.org/publishing/epub3/epub-spec.html) RTL standard book.
* Automatically adds a page for book information.
* Automatically generated table of contents with support for nested chapters.
* Automatically adds book part and page number to each page's footer.
* Sanitizes the book HTML from unnecessary elements and classes.
* Converts inline CSS color styles to CSS classes.
* Inline footnotes for easier navigation, click any footnote, and it will appear in a popup instead of having all
  footnotes in page footer.

## Known Issues

* Books that have a last nested section with level deeper (e.g. 3) than its next section (e.g. 2) and both have the same
  page number (e.g. `page_017.xhtml`) cannot be converted to KFX unless that last nested section is removed.

## TODO

### Next

* You tell me :)

### Maybe

* Fix TOC conversion problem when last nested section with level deeper than its next has the same page number by
  removing it from the TOC.

## Acknowledgments

* GUI icons are made by the amazing [Phosphor Icons](https://phosphoricons.com/) (books - duotone - `#AB8B64`).

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/yshalsager/shamela2epub/",
    "name": "shamela2epub",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.12,<3.13",
    "maintainer_email": "",
    "keywords": "epub3,shamela,book,epub,islamic",
    "author": "yshalsager",
    "author_email": "ysh-alsager@hotmail.com",
    "download_url": "https://files.pythonhosted.org/packages/ff/b2/4b9ffaa962463ab7ca4942057cd3e5493ffa87d9ca67e4e9ca5a3885e6bb/shamela2epub-1.4.3.tar.gz",
    "platform": null,
    "description": "# shamela2epub\n\n> A CLI and GUI tool to download a book on [Shamela Library Website](https://shamela.ws) into an EPUB book.\n\n[![en](https://img.shields.io/badge/README-English-AB8B64.svg)](README.md)\n[![ara](https://img.shields.io/badge/README-Arabic-AB8B64.svg)](README.ar.md)\n\n![logo](shamela2epub/assets/books-duotone.svg)\n\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/901b1123964c4468a88b0cfcde9147fe)](https://www.codacy.com/gh/yshalsager/shamela2epub/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=yshalsager/shamela2epub&amp;utm_campaign=Badge_Grade)\n[![PyPI version](https://badge.fury.io/py/shamela2epub.svg)](https://pypi.org/project/shamela2epub/)\n[![PyPI Downloads](https://static.pepy.tech/personalized-badge/shamela2epub?period=total\\&units=international_system\\&left_color=grey\\&right_color=blue\\&left_text=Total%20Downloads%20\\(PyPI\\))](https://pepy.tech/project/shamela2epub)\n\n[![GitHub release](https://img.shields.io/github/release/yshalsager/shamela2epub.svg)](https://github.com/yshalsager/shamela2epub/releases/)\n[![GitHub Downloads](https://img.shields.io/github/downloads/yshalsager/shamela2epub/total.svg)](https://github.com/yshalsager/shamela2epub/releases/latest)\n\n[![made-with-python](https://img.shields.io/badge/Made%20with-Python%203-3776AB?style=flat\\&labelColor=3776AB\\&logo=python\\&logoColor=white\\&link=https://www.python.org/)](https://www.python.org/)\n[![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/)\n\n[![PayPal](https://img.shields.io/badge/PayPal-Donate-00457C?style=flat\\&labelColor=00457C\\&logo=PayPal\\&logoColor=white\\&link=https://www.paypal.me/yshalsager)](https://www.paypal.me/yshalsager)\n[![LiberaPay](https://img.shields.io/badge/Liberapay-Support-F6C915?style=flat\\&labelColor=F6C915\\&logo=Liberapay\\&logoColor=white\\&link=https://liberapay.com/yshalsager)](https://liberapay.com/yshalsager)\n\n**Disclaimer:**\n\n* This software is freeware and open source and is only intended for personal or educational use.\n\n## Installation\n\n### From PyPI\n\n```bash\npip install shamela2epub\n```\n\n### From the cloned repository\n\n```bash\n# Using poetry\npoetry install\n\n# or using pip 18+\npip install .\n```\n\n## Usage\n\n### Command-line Tool (CLI)\n\n```bash\npython3 -m shamela2epub download URL\n# python3 -m shamela2epub download \"https://shamela.ws/book/823\"\n\npython3 -m shamela2epub download --help\nUsage: python -m shamela2epub download [OPTIONS] URL\n\n  Download Shamela book form URL to ePub\n\nOptions:\n  -o, --output TEXT  ePub output book custom name\n  --help             Show this message and exit.\n```\n\n### Graphical User Interface (GUI)\n\n![gui](gui.png)\n\n* If you installed the package from PyPI, you can use the following command:\n\n```bash\nshamela2epubgui\n```\n\n* If you downloaded the latest gui exe file from releases you can open it normally and use it.\n* Otherwise, use normal python command:\n\n```bash\npython3 -m shamela2epub gui\n```\n\n## Features\n\n* CLI and GUI!\n* Creates an [EPUB3](https://www.w3.org/publishing/epub3/epub-spec.html) RTL standard book.\n* Automatically adds a page for book information.\n* Automatically generated table of contents with support for nested chapters.\n* Automatically adds book part and page number to each page's footer.\n* Sanitizes the book HTML from unnecessary elements and classes.\n* Converts inline CSS color styles to CSS classes.\n* Inline footnotes for easier navigation, click any footnote, and it will appear in a popup instead of having all\n  footnotes in page footer.\n\n## Known Issues\n\n* Books that have a last nested section with level deeper (e.g. 3) than its next section (e.g. 2) and both have the same\n  page number (e.g. `page_017.xhtml`) cannot be converted to KFX unless that last nested section is removed.\n\n## TODO\n\n### Next\n\n* You tell me :)\n\n### Maybe\n\n* Fix TOC conversion problem when last nested section with level deeper than its next has the same page number by\n  removing it from the TOC.\n\n## Acknowledgments\n\n* GUI icons are made by the amazing [Phosphor Icons](https://phosphoricons.com/) (books - duotone - `#AB8B64`).\n",
    "bugtrack_url": null,
    "license": "GPL-3.0-only",
    "summary": "A CLI and GUI tool to download a book on https://shamela.ws to an EPUB book.",
    "version": "1.4.3",
    "project_urls": {
        "Homepage": "https://github.com/yshalsager/shamela2epub/",
        "Repository": "https://github.com/yshalsager/shamela2epub/"
    },
    "split_keywords": [
        "epub3",
        "shamela",
        "book",
        "epub",
        "islamic"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9b5a8237185b1d94478603437a044889702496efc621fb17e3692f8b61e29217",
                "md5": "dc398389ee93afd0e37a92b80de9249e",
                "sha256": "5048c93be0c8b9ddbf2e19ce8f6552571375f7e3d1e5a813b8079eb781a0e67d"
            },
            "downloads": -1,
            "filename": "shamela2epub-1.4.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "dc398389ee93afd0e37a92b80de9249e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12,<3.13",
            "size": 198234,
            "upload_time": "2024-03-15T12:21:01",
            "upload_time_iso_8601": "2024-03-15T12:21:01.261994Z",
            "url": "https://files.pythonhosted.org/packages/9b/5a/8237185b1d94478603437a044889702496efc621fb17e3692f8b61e29217/shamela2epub-1.4.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ffb24b9ffaa962463ab7ca4942057cd3e5493ffa87d9ca67e4e9ca5a3885e6bb",
                "md5": "87ed2f535fda195e7e6c39b33cf5d952",
                "sha256": "a0357b62b89769fe9ecc04accd1d229aed245ef19f5b7a6a35ae0a80f9425cf1"
            },
            "downloads": -1,
            "filename": "shamela2epub-1.4.3.tar.gz",
            "has_sig": false,
            "md5_digest": "87ed2f535fda195e7e6c39b33cf5d952",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12,<3.13",
            "size": 193560,
            "upload_time": "2024-03-15T12:21:12",
            "upload_time_iso_8601": "2024-03-15T12:21:12.992733Z",
            "url": "https://files.pythonhosted.org/packages/ff/b2/4b9ffaa962463ab7ca4942057cd3e5493ffa87d9ca67e4e9ca5a3885e6bb/shamela2epub-1.4.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-15 12:21:12",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "yshalsager",
    "github_project": "shamela2epub",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "shamela2epub"
}
        
Elapsed time: 2.43214s