Giter Site home page Giter Site logo

bokkaebi / novel-grabber Goto Github PK

View Code? Open in Web Editor NEW

This project forked from flameish/novel-grabber

0.0 0.0 0.0 3.16 MB

Novel-Grabber can download novels from pretty much any webnovel and lightnovel site.

License: MIT License

Java 98.24% CSS 1.76%

novel-grabber's Introduction

alt textNovel-Grabber

Novel-Grabber is a gui based web scrapper that can download and convert chapters into EPUB from various supported web/light novel sites or from any other site manually.

Features

  • Over 100 supported sites
  • A manual mode for unsupported sites
  • Image support
  • Blacklist HTML tags to remove unwanted content
  • A library to keep track of new releases for your favorite novels
  • Login support via cookies
  • CLI
  • Telegram Bot: @NovelGrabbyBot

How to use

Updating

Starting NG-Launcher.jar will update and redownload missing files. Alternatively you can just start the main program via Novel-Grabber.jar inside the bin folder.

Automatic:

  1. Download Novel-Grabber.zip and execute the launcher inside
    (If you can't execute the jar, try to start it via the terminal command: java -jar NG-Launcher.jar)
  2. Enter the link of the novel
  3. Click on 'Check' to fetch metadata and chapter list
  4. Grab chapters

Manual:

Using a table of content:

  1. Enter the URL to the novel's "table of contents" page and retrieve all links on the site.
  2. Remove all unwanted links from the selection window.
  3. Input the chapter container the site uses. I strongly suggest using the "auto detect" function, it generally works well and enables grabbing from different sites.
    Or you can specify a CSS selector manually. Guide
  4. You can remove unwanted content from the chapter via the "blacklisted tags" window (flag icon at the top).
    Don't forget to set title, author, cover etc.

Using Chapter-To-Chapter navigation:

  1. Input the URL of your starting point and ending point chapter. (Inclusive)
  2. Input the selector for the "Next-Chapter" button. You want to select the <a> tag of it. (via css selector)

CLI:

Usage:

Use these arguments with the main Novel-Grabber.jar from inside the bin folder! NG-Launcher.jar is just the updater.

[] = optional paramaters {} = arguments for paramater

Parameter Arguments Description
-gui / none Starts the Graphical User Interface.
-link {novel_URL} URL to the novel's table of contents page. Starts download.
[-wait] {miliseconds} Time between each chapter grab.
[-headless] {chrome/firefox/opera/edge/IE/headless} Visit the website in your browser. Executes javascript etc.
[-chapters] {all}, {5 27}, {12 last} Specify which chapters to download.
[-path] {directory_path} Output directory for the EPUB.
[-login] Log in on website with saved account. -account is not needed if an account for this domain was added previously.
[-noDesc] Don't create a description page.
[-getImages] Grab images from chapter body as well.
[-displayTitle] Write the chapter title at the top of each chapter text.
[-invertOrder] Invert the chapter order.
-help Shows the help page.

Example: java -jar Novel-Grabber.jar -link https://yourhost.com/novel/ -chapters 15 20 -getImages


Telegram bot:

To host your own Telegram bot you need to add the line telegramApiToken=your_token to your config.ini or on the GUI via the Telegram Bot settings tab.

By default the bot will read the output for /info from a info.txt file inside the telegram folder which you can adjust.

To start the bot you need to use the -telegramBot parameter: java -jar Novel-Grabber.jar -telegramBot

Screenshots

Automatic Tab

Manual Tab

Library Tab

Disclaimer & Warning

Most sites prohibit the scrapping for their content. Use at your own risk. Please use with appropriate wait times. Downloaded chapters are for private use only.

Requirements

  • Java (version 8+) needs to be installed.

Credits & Libraries

Novel Grabber was build in java with:

novel-grabber's People

Contributors

aaron2550 avatar flameish avatar posiaden123 avatar rvail avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.