Skip to main content

Tool to convert webnovel to epub

Project description

NovelSave

GitHub version PyPI version

Tool to convert novels to epub

v0.6.+ is not compatible with previous versions

Install

pip install novelsave

or

pip install git+https://github.com/mHaisham/novelsave.git

Commandline

Example

Update a novel

novelsave https://www.webnovel.com/book/my-disciples-are-all-villains_16984011906162405 -u -p -c

Check/Update configurations

novelsave config
novelsave config -d novels

Save directory

Novels are saved to folder novels in user home

Help

usage: __main__.py [-h] [-u] [-p] [-c] [--meta META] [--force-cover] [--force-create] [--force-meta] [--email EMAIL] [-v] [--threads THREADS] [--timeout TIMEOUT]
                   [--limit LIMIT] [-d DIR]
                   action

tool to convert novels to epub

positional arguments:
  action             novel url for downloading novels; 'config' to change configurations

optional arguments:
  -h, --help         show this help message and exit
  -v, --verbose      enable animations; only in pending
  --threads THREADS  number of download threads
  --timeout TIMEOUT  webdriver timeout
  --limit LIMIT      amount of chapters to download

actions:
  -u, --update       update novel details
  -p, --pending      download pending chapters
  -c, --create       create epub from downloaded chapters
  --meta META        metadata source url
  --remove-meta      remove current metadata
  --force-cover      download and overwrite the existing cover
  --force-create     force create epub
  --force-meta       force update metadata

credentials:
  --username USERNAME  username or email field
  --password PASSWORD  password field
  --cookies-chrome     use cookies from chrome
  --cookies-firefox    use cookies from firefox

config:
  -d DIR, --dir DIR  directory for saving novels

Login and cookies

Two methods of accessing authenticated content are provided

Browser cookies

Recommended method of access

Uses cookies from available browsers access content

Requires to be Signed in, in the browser of choice

Available browsers
  • Chrome --cookies-chrome

  • Firefox --cookies-firefox

Login

Username and password are sent to the website server to authenticate. Cookies are not persisted, thus requiring individual signin per usage

Tested

webnovel.com

Manual

Pass a url to the NovelSave class which will select the correct source for it.

from novelsave import NovelSave

if __name__ == '__main__':
    save = NovelSave(url)

Methods

NovelSave has 5 methods

  • update(self, force_cover=False):
  • metadata(self, url, force=False):
  • remove_metadata(self, with_source=True):
  • download(self, thread_count=4, limit=None):
  • create_epub(self, force=False):

Database

you can access the database by using the db attribute of NovelSave

    save.db

Sources

Metadata Sources

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

novelsave-0.6.1.tar.gz (29.6 kB view hashes)

Uploaded Source

Built Distribution

novelsave-0.6.1-py3-none-any.whl (55.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page