{"id":37785324,"url":"https://github.com/carter-ya/novel","last_synced_at":"2026-01-16T15:11:45.279Z","repository":{"id":47279882,"uuid":"122813292","full_name":"carter-ya/novel","owner":"carter-ya","description":"网络小说下载器，网络小说章节列表，正文抓取API","archived":false,"fork":false,"pushed_at":"2022-09-01T22:52:52.000Z","size":39,"stargazers_count":4,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-03-06T13:00:54.937Z","etag":null,"topics":["httpclient","java","java8","novel","novel-downloader"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/carter-ya.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-02-25T07:03:11.000Z","updated_at":"2023-02-04T15:51:23.000Z","dependencies_parsed_at":"2022-09-19T05:40:24.693Z","dependency_job_id":null,"html_url":"https://github.com/carter-ya/novel","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"purl":"pkg:github/carter-ya/novel","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carter-ya%2Fnovel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carter-ya%2Fnovel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carter-ya%2Fnovel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carter-ya%2Fnovel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/carter-ya","download_url":"https://codeload.github.com/carter-ya/novel/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carter-ya%2Fnovel/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28479406,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["httpclient","java","java8","novel","novel-downloader"],"created_at":"2026-01-16T15:11:45.205Z","updated_at":"2026-01-16T15:11:45.265Z","avatar_url":"https://github.com/carter-ya.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"### 如何下载小说？\n#### 单线程下载\n```java\nDownloader downloder = new SingleThreadDownloader();\nString path = \"out/万古神帝.txt\";// 保存路径\nString chapterListUrl = \"http://www.booktxt.net/3_3571/\";// 章节地址\ndownloader.download(chapterListUrl, path);// 整本书下载\nString chapterUrl = \"http://www.booktxt.net/3_3571/1292242.html\";// 指定的章节\ndownloader.downloadSkipPrevChapters(chapterUrl, path);// 从指定的章节开始下载所有章节\n```\n#### 多线程下载\n```java\nint fixedThreadCount = 5;// 固定每次下载只用5个线程\nDownloader downloder = MultiThreadDownloader.newFixedThreadCountDownloader(Executors.newCachedThreadPool(), fixedThreadCount);\nint fixedTaskCount = 100;// 固定每个线程最多下载100章\ndownloader = MultiThreadDownloader.newFixedTaskCountDownloader(Executors.newCachedThreadPool(), fixedTaskCount);\n```\n### 支持哪些小说网站？\n- [顶点小说](http://www.booktxt.net)\n- [笔趣阁](http://www.biquge.com.tw)\n### 如何支持更多的小说网站？\n1. 实现[Novel](src/main/java/com/ifengxue/novel/Novel.java)接口\n\u003e 可参考[顶点小说](src/main/java/com/ifengxue/novel/BookTxtNovel.java)实现\n\n2. 实现[Chapter](src/main/java/com/ifengxue/novel/chapter/Chapter.java)接口\n\u003e 可参考[顶点小说](src/main/java/com/ifengxue/novel/chapter/BookTxtChapter.java)实现\n\n3. 实现[ChapterBody](src/main/java/com/ifengxue/novel/chapter/ChapterBody.java)接口\n\u003e 可参考[顶点小说](src/main/java/com/ifengxue/novel/chapter/BookTxtChapterBody.java)实现\n\n4. 注册到工厂[NovelFactory](src/main/java/com/ifengxue/novel/NovelFactory.java)\n```java\nNovelFactory.register(\"www.booktxt.net\", BookTxtNovel.class, BookTxtChapterBody.class);\nNovelFactory.register(\"www.example.com\", ExampleNovel.class, ExampleChapterBody.class);\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarter-ya%2Fnovel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcarter-ya%2Fnovel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarter-ya%2Fnovel/lists"}