{"id":19573651,"url":"https://github.com/lonode/royalroad-fetchandconvert","last_synced_at":"2025-04-27T05:33:11.482Z","repository":{"id":78318226,"uuid":"407824703","full_name":"lonode/royalroad-fetchAndConvert","owner":"lonode","description":"Automatically download a royalroad story, convert it to kindle format and push it to the device.","archived":false,"fork":false,"pushed_at":"2024-08-04T10:46:43.000Z","size":64,"stargazers_count":7,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-08-04T18:29:46.595Z","etag":null,"topics":["adb","azw3","ebook","epub","fanfiction","kindle","python","royalroad","webfiction","webnovel"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lonode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-09-18T10:08:09.000Z","updated_at":"2024-08-04T10:46:46.000Z","dependencies_parsed_at":null,"dependency_job_id":"5c6630c7-3e04-4f25-9b28-1b688691be6c","html_url":"https://github.com/lonode/royalroad-fetchAndConvert","commit_stats":null,"previous_names":["lonode/royalroad-fetchandconvert"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lonode%2Froyalroad-fetchAndConvert","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lonode%2Froyalroad-fetchAndConvert/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lonode%2Froyalroad-fetchAndConvert/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lonode%2Froyalroad-fetchAndConvert/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lonode","download_url":"https://codeload.github.com/lonode/royalroad-fetchAndConvert/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224061615,"owners_count":17249262,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["adb","azw3","ebook","epub","fanfiction","kindle","python","royalroad","webfiction","webnovel"],"created_at":"2024-11-11T06:35:12.011Z","updated_at":"2024-11-11T06:35:12.954Z","avatar_url":"https://github.com/lonode.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# royalroad-fetchAndConvert\nAutomatically download a royalroad story, optionally convert it to kindle format and push it to the device.\n\n![GUI Homepage](homepage.png)\n\n\n# Features\n\n* Retrieve automatically all the chapters of the given story\n* Support table of content for ebook conversion\n* Support author note at both end and start of the chapter\n* Support images\n* Support CSS rules for different stories (e.g. \"Everybody Love Large Chest\")\n* Convert the story in the azw3 format, and push it to the kindle.\n\n\n# GUI\n\n## Install\n\nDownload the latest [released](https://github.com/lonode/royalroad-fetchAndConvert/releases) graphical version. For now, only the downloading is supported. The ebook generated need to be given to Calibre to convert it \u0026 to push it to your device.\n\n## Developpement\n\nThe GUI has been developped with Tkinter. Specifically, [customtkinter](https://github.com/tomschimansky/customtkinter). All the front end is inside the file ``gui_rfetcher.py``.\n\nThe release is made by following this [official](https://customtkinter.tomschimansky.com/documentation/packaging) tutorial.\n\n# CLI\n\n## Install\n\nInstall Python3 on your operating system. \n\nInstall needed libraries : \n\n\tpip install requests-html\n\nAlso [Install ADB drivers](https://adb.clockworkmod.com/) if you plan to automatically push the book into your Kindle.\n\n\n\nIt also uses [calibre](https://github.com/kovidgoyal/calibre) to convert and push the ebook to the kindle. Everything is included here.  \n\n## Usage\n\n## Fetch and convert to AZW3 (Kindle Format)\n\nThe following command pull the chapter\n\n\tpython fetch_book.py url_of_chapter number_of_chapters name_of_ebook\n\nParameters :  \n\n* url_of_chapter : The URL of the chapter (not of the story homepage!)\n* number_of_chapters : You guessed. If you want the whole book, just enter something like 99999\n* name_of_ebook : The name of the ebook, .html extension will be added when the file is written on the filesystem.\n\nIt reads the chapter content of the URL given ( url_of_chapter ) and goes to the next chapter, and it loops number_of_chapters times.  \n\nThis command will give you a file ```name_of_ebook.html``` on your filesystem, that can be used through Calibre to be directly pushed to your Kindle. \n\n\n## Fetch, convert, and push to your device : \n\n\tfetchAndCopy.py url_of_chapter number_of_chapters name_of_ebook\n\nThis script will download the chapter and push it to the first kindle detected. ```name_of_ebook``` is the name of the ebook which will be visible.\n\n\n## Example  \n\nIf you want to fetch the best rated story Mother of Learning from the first chapter, execute the following command :\n\n    python fetch_book.py https://www.royalroad.com/fiction/21220/mother-of-learning/chapter/301778/1-good-morning-brother 102 Mother_Of_Learning\n  \nIn the example above, MOL.html is written a the working directory.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flonode%2Froyalroad-fetchandconvert","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flonode%2Froyalroad-fetchandconvert","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flonode%2Froyalroad-fetchandconvert/lists"}