├── LICENSE ├── README.md ├── README_EN.md └── sources ├── bayizw.json ├── biquge.json ├── qidian.json ├── shucang.json └── zhaishuyuan.json /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Clean Reader 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 |

4 | 5 |
6 | 7 | # 书源列表 8 | 9 | 欢迎大家提交自己制作的书源,书源定义文档在 [这里](https://docs.richasy.cn/clean-reader/booksource). 10 | 11 | [English](README_EN.md) 12 | 13 |
14 | 15 | ## 如何使用 🛠️ 16 | 17 | 将自己喜欢的书源文件下载下来后,复制到干净阅读所创建的书库文件夹下的 `.booksource` 目录内,重启应用即可。 18 | 19 | *如果贡献人数较多的话会在干净阅读应用本体内嵌入一个书源导入功能* 20 | 21 | ## 如何贡献 😊 22 | 23 | 如果你定义了自己的书源,并愿意与他人共享,可以在这个仓库提交 PR ,将你的书源文件放在 `sources` 目录中,经过验证后,会进行合并。 24 | 25 | 如果你提交的书源已经被定义,请在已有文件的基础上进行修改。如果是同名孪生网站,请在书源名上予以区分。 26 | 27 | ## 注意事项 🚫 28 | 29 | 请不要提交涉及反动、色情、暴力等具有争议的书源。 30 | -------------------------------------------------------------------------------- /README_EN.md: -------------------------------------------------------------------------------- 1 |

2 | 3 |

4 | 5 |
6 | 7 | # Book sources 8 | 9 | Welcome to submit your own book source, the book source definition document is [here](https://docs.richasy.cn/clean-reader/booksource). 10 | 11 | [简体中文](README.md) 12 | 13 |
14 | 15 | ## How to use 🛠️ 16 | 17 | After downloading the book source file you like, copy it to the `.booksource` directory under the library folder created by Clean Reader, and restart the application. 18 | 19 | *If the number of contributors is large, a book source import function will be embedded in the clean reader application* 20 | 21 | ## How to contribute 😊 22 | 23 | If you have defined your own book source and are willing to share it with others, you can submit a PR in this repository and put your book source file in the `sources` directory. After verification, it will be merged. 24 | 25 | If the book source you submitted has been defined, please modify the existing file. If it is a twin website with the same name, please distinguish it in the source name. 26 | 27 | ## Precautions 🚫 28 | 29 | Please do not submit controversial sources involving reaction, pornography, violence, etc. 30 | -------------------------------------------------------------------------------- /sources/bayizw.json: -------------------------------------------------------------------------------- 1 | { 2 | "Id": "bayizw", 3 | "Name": "八一中文网", 4 | "WebUrl": "https://www.81zw.com/", 5 | "Charset": "utf-8", 6 | "IsBookDetailEnabled": false, 7 | "IsExploreEnabled": false, 8 | "Search": { 9 | "SearchUrl": "https://www.81zw.com/search.php?q=", 10 | "NeedDetail": false, 11 | "DataType": "HTML", 12 | "Range": "div[class='result-list'] div.result-item", 13 | "Repair": [ 14 | { 15 | "Field": 1, 16 | "Position": "l", 17 | "Value": "https://www.81zw.com" 18 | } 19 | ], 20 | "Replace": [], 21 | "BookName": { 22 | "Type": "text", 23 | "Rule": "h3.result-item-title a span", 24 | "Filter": "" 25 | }, 26 | "BookUrl": { 27 | "Type": "href", 28 | "Rule": "h3.result-item-title a", 29 | "Filter": "" 30 | }, 31 | "BookAuthor": { 32 | "Type": "text", 33 | "Rule": "div.result-game-item-info p span:nth-child(2)", 34 | "Filter": "" 35 | }, 36 | "LastChapterTitle": { 37 | "Type": "text", 38 | "Rule": "div.result-game-item-info p:nth-last-child(1) a", 39 | "Filter": "" 40 | }, 41 | "LastChapterUrl": { 42 | "Type": "href", 43 | "Rule": "div.result-game-item-info p:nth-last-child(1) a", 44 | "Filter": "" 45 | }, 46 | "UpdateTime": { 47 | "Type": "text", 48 | "Rule": "dd[class='book_other']:nth-last-child(2) span:nth-last-child(1)", 49 | "Filter": "" 50 | }, 51 | "Category": { 52 | "Type": "text", 53 | "Rule": "div.result-game-item-info p:nth-child(2) span:nth-child(2)", 54 | "Filter": "" 55 | }, 56 | "BookDescription": { 57 | "Type": "text", 58 | "Rule": "p.result-game-item-desc", 59 | "Filter": "" 60 | }, 61 | "BookCover": { 62 | "Type": "src", 63 | "Rule": "div.result-game-item-pic a img", 64 | "Filter": "" 65 | } 66 | }, 67 | "Chapter": { 68 | "Range": "div[id='list'] dd", 69 | "Repair": [ 70 | { 71 | "Field": 1, 72 | "Position": "l", 73 | "Value": "https://www.81zw.com" 74 | } 75 | ], 76 | "Replace": [], 77 | "IsChildFiltered": false, 78 | "Title": { 79 | "Type": "text", 80 | "Rule": "a", 81 | "Filter": "" 82 | }, 83 | "Url": { 84 | "Type": "href", 85 | "Rule": "a", 86 | "Filter": "" 87 | } 88 | }, 89 | "ChapterContent": { 90 | "Range": "div[class='box_con']", 91 | "Content": { 92 | "Type": "text", 93 | "Rule": "div[id='content']", 94 | "Filter": "" 95 | } 96 | } 97 | } -------------------------------------------------------------------------------- /sources/biquge.json: -------------------------------------------------------------------------------- 1 | { 2 | "Id": "biquge", 3 | "Name": "笔趣阁", 4 | "WebUrl": "https://www.52bqg.net", 5 | "IsBookDetailEnabled": true, 6 | "Charset": "gb2312", 7 | "Search": { 8 | "SearchUrl": "https://www.52bqg.net/modules/article/search.php?searchkey=", 9 | "Range": "div[class='novelslistss'] li", 10 | "Repair": [ 11 | { 12 | "Field": 1, 13 | "Position": "l", 14 | "Value": "https://www.52bqg.net" 15 | } 16 | ], 17 | "Replace": [ 18 | { 19 | "Field": 4, 20 | "Old": " ", 21 | "New": " " 22 | } 23 | ], 24 | "BookName": { 25 | "Type": "text", 26 | "Rule": "span[class='s2'] a", 27 | "Filter": "" 28 | }, 29 | "BookUrl": { 30 | "Type": "href", 31 | "Rule": "span[class='s2'] a", 32 | "Filter": "" 33 | }, 34 | "BookAuthor": { 35 | "Type": "text", 36 | "Rule": "span[class='s4']", 37 | "Filter": "" 38 | }, 39 | "LastChapterTitle": { 40 | "Type": "text", 41 | "Rule": "span[class='s3'] a", 42 | "Filter": "" 43 | }, 44 | "LastChapterUrl": { 45 | "Type": "href", 46 | "Rule": "span[class='s3'] a", 47 | "Filter": "" 48 | }, 49 | "Category": { 50 | "Type": "text", 51 | "Rule": "span[class='s1']", 52 | "Filter": "" 53 | }, 54 | "NeedDetail": true 55 | }, 56 | "BookDetail": { 57 | "Range": "div[id='maininfo']", 58 | "Replace": [ 59 | { 60 | "Field": 4, 61 | "Old": " ", 62 | "New": " " 63 | } 64 | ], 65 | "UpdateTime": { 66 | "Type": "text", 67 | "Rule": "div[id='info'] p:nth-child(4)", 68 | "Filter": "(更新时间:)|\\[(.*)\\]" 69 | }, 70 | "BookDescription": { 71 | "Type": "text", 72 | "Rule": "div[id='intro']", 73 | "Filter": "" 74 | }, 75 | "BookCover": { 76 | "Type": "src", 77 | "Rule": "div[id='fmimg'] img", 78 | "Filter": "" 79 | } 80 | }, 81 | "Chapter": { 82 | "Range": "div[id='list'] dl dd", 83 | "Repair": [ 84 | { 85 | "Field": 1, 86 | "Position": "", 87 | "Value": "ORIGIN_URL" 88 | } 89 | ], 90 | "Title": { 91 | "Type": "text", 92 | "Rule": "a", 93 | "Filter": "" 94 | }, 95 | "Url": { 96 | "Type": "href", 97 | "Rule": "a", 98 | "Filter": "" 99 | } 100 | }, 101 | "ChapterContent": { 102 | "Range": "div[id='box_con']", 103 | "Content": { 104 | "Type": "text", 105 | "Rule": "div[id='content']", 106 | "Filter": "" 107 | } 108 | } 109 | } -------------------------------------------------------------------------------- /sources/qidian.json: -------------------------------------------------------------------------------- 1 | { 2 | "Id": "qidian", 3 | "Name": "起点中文网", 4 | "WebUrl": "https://www.qidian.com", 5 | "Charset": "utf-8", 6 | "IsBookDetailEnabled": false, 7 | "IsExploreEnabled": true, 8 | "Explore": { 9 | "Categories": [ 10 | { 11 | "Name": "月票榜", 12 | "Url": "/rank/yuepiao/page{{page}}/" 13 | }, 14 | { 15 | "Name": "热销榜", 16 | "Url": "/rank/hotsales/page{{page}}/" 17 | }, 18 | { 19 | "Name": "阅读指数榜", 20 | "Url": "/rank/readindex/page{{page}}/" 21 | }, 22 | { 23 | "Name": "推荐榜", 24 | "Url": "/rank/recom/page{{page}}/" 25 | }, 26 | { 27 | "Name": "收藏榜", 28 | "Url": "/rank/collect/page{{page}}/" 29 | } 30 | ], 31 | "NeedDetail": false, 32 | "Range": "div[id='book-img-text'] ul li", 33 | "Repair": [ 34 | { 35 | "Field": 1, 36 | "Position": "l", 37 | "Value": "https:" 38 | }, 39 | { 40 | "Field": 2, 41 | "Position": "l", 42 | "Value": "https:" 43 | } 44 | ], 45 | "BookName": { 46 | "Type": "text", 47 | "Rule": "div.book-mid-info h2 a" 48 | }, 49 | "BookUrl": { 50 | "Type": "href", 51 | "Rule": "div.book-mid-info h2 a" 52 | }, 53 | "BookAuthor": { 54 | "Type": "text", 55 | "Rule": "p.author a" 56 | }, 57 | "LastChapterTitle": { 58 | "Type": "text", 59 | "Rule": "p.update a", 60 | "Filter": "最新更新 " 61 | }, 62 | "Category": { 63 | "Type": "text", 64 | "Rule": "p.author a:nth-child(2)" 65 | }, 66 | "BookCover": { 67 | "Type": "src", 68 | "Rule": "div.book-img-box a img" 69 | }, 70 | "BookDescription": { 71 | "Type": "text", 72 | "Rule": "p.intro" 73 | }, 74 | "BookStatus": { 75 | "Type": "text", 76 | "Rule": "p.author span" 77 | }, 78 | "UpdateTime": { 79 | "Type": "text", 80 | "Rule": "p.update span" 81 | } 82 | } 83 | } -------------------------------------------------------------------------------- /sources/shucang.json: -------------------------------------------------------------------------------- 1 | { 2 | "Id": "shucang", 3 | "Name": "书仓网", 4 | "WebUrl": "https://www.shucang.cc", 5 | "Charset": "utf-8", 6 | "IsBookDetailEnabled": true, 7 | "IsExploreEnabled": true, 8 | "Search": { 9 | "SearchUrl": "https://www.shucangxsw.com/search.html", 10 | "DataType": "HTML", 11 | "Request": { 12 | "Method": "POST", 13 | "Body": "searchkey={{keyword}}", 14 | "DataType": "form" 15 | }, 16 | "NeedDetail": false, 17 | "Range": "div[id='sitembox'] dl", 18 | "Repair": [ 19 | { 20 | "Field": 1, 21 | "Position": "l", 22 | "Value": "https://www.shucangxsw.com" 23 | } 24 | ], 25 | "Replace": [], 26 | "BookName": { 27 | "Type": "text", 28 | "Rule": "dd h3 a", 29 | "Filter": "" 30 | }, 31 | "BookUrl": { 32 | "Type": "href", 33 | "Rule": "dd h3 a", 34 | "Filter": "" 35 | }, 36 | "BookAuthor": { 37 | "Type": "text", 38 | "Rule": "dd[class='book_other'] span", 39 | "Filter": "" 40 | }, 41 | "BookStatus": { 42 | "Type": "text", 43 | "Rule": "dd[class='book_other'] span:nth-child(2)", 44 | "Filter": "" 45 | }, 46 | "LastChapterTitle": { 47 | "Type": "text", 48 | "Rule": "dd[class='book_other']:nth-last-child(1) a", 49 | "Filter": "" 50 | }, 51 | "LastChapterUrl": { 52 | "Type": "href", 53 | "Rule": "dd[class='book_other']:nth-last-child(1) a", 54 | "Filter": "" 55 | }, 56 | "UpdateTime": { 57 | "Type": "text", 58 | "Rule": "dd[class='book_other']:nth-last-child(1) span", 59 | "Filter": "" 60 | }, 61 | "Category": { 62 | "Type": "text", 63 | "Rule": "dd[class='book_other'] span:nth-last-child(2)", 64 | "Filter": "" 65 | }, 66 | "BookDescription": { 67 | "Type": "text", 68 | "Rule": "dd[class='book_des']", 69 | "Filter": "" 70 | }, 71 | "BookCover": { 72 | "Type": "src", 73 | "Rule": "dt a img", 74 | "Filter": "" 75 | } 76 | }, 77 | "BookDetail": { 78 | "Range": "div[id='main'] div[class='box_con']", 79 | "Replace": [ 80 | { 81 | "Field": 4, 82 | "Old": " ", 83 | "New": " " 84 | } 85 | ], 86 | "UpdateTime": { 87 | "Type": "text", 88 | "Rule": "div[id='info'] p:nth-child(3)", 89 | "Filter": "(最后更新:)|\\[(.*)\\]" 90 | }, 91 | "BookDescription": { 92 | "Type": "text", 93 | "Rule": "div[id='intro'] p", 94 | "Filter": "" 95 | }, 96 | "BookCover": { 97 | "Type": "src", 98 | "Rule": "div[id='fmimg'] img", 99 | "Filter": "" 100 | } 101 | }, 102 | "Chapter": { 103 | "Range": "div[id='list'] dl dd", 104 | "Repair": [ 105 | { 106 | "Field": 1, 107 | "Position": "l", 108 | "Value": "https://www.shucangxsw.com" 109 | } 110 | ], 111 | "Title": { 112 | "Type": "text", 113 | "Rule": "a", 114 | "Filter": "" 115 | }, 116 | "Url": { 117 | "Type": "href", 118 | "Rule": "a", 119 | "Filter": "" 120 | } 121 | }, 122 | "ChapterContent": { 123 | "Range": "div[class='box_con']", 124 | "Content": { 125 | "Type": "text", 126 | "Rule": "div[id='content']", 127 | "Filter": "" 128 | }, 129 | "NextPage": { 130 | "Range": "div[class='bottem2'] a[id='A3']", 131 | "Type": "href", 132 | "Filter": "", 133 | "Repair": [ 134 | { 135 | "Field": 1, 136 | "Position": "l", 137 | "Value": "https://www.shucangxsw.com" 138 | } 139 | ], 140 | "Match": { 141 | "Type": "text", 142 | "Rule": "div[class='bottem2'] a[id='A3']", 143 | "Filter": "\\s*", 144 | "MatchRule": "下一页" 145 | } 146 | } 147 | }, 148 | "Explore": { 149 | "Categories": [ 150 | { 151 | "Name": "总点击", 152 | "Url": "/shucang/rank_allvisit_{{page}}.html" 153 | }, 154 | { 155 | "Name": "总推荐", 156 | "Url": "/shucang/rank_allvote_{{page}}.html" 157 | }, 158 | { 159 | "Name": "总收藏", 160 | "Url": "/shucang/rank_goodnum_{{page}}.html" 161 | }, 162 | { 163 | "Name": "玄幻奇幻", 164 | "Url": "/shucang/category_xuanhuan_{{page}}.html" 165 | }, 166 | { 167 | "Name": "武侠仙侠", 168 | "Url": "/shucang/category_wuxia_{{page}}.html" 169 | }, 170 | { 171 | "Name": "都市生活", 172 | "Url": "/shucang/category_dushi_{{page}}.html" 173 | }, 174 | { 175 | "Name": "历史军事", 176 | "Url": "/shucang/category_lishi_{{page}}.html" 177 | }, 178 | { 179 | "Name": "游戏竞技", 180 | "Url": "/shucang/category_youxi_{{page}}.html" 181 | }, 182 | { 183 | "Name": "科幻未来", 184 | "Url": "/shucang/category_kehuan_{{page}}.html" 185 | }, 186 | { 187 | "Name": "恐怖悬疑", 188 | "Url": "/shucang/category_xuanyi_{{page}}.html" 189 | }, 190 | { 191 | "Name": "其它类型", 192 | "Url": "/shucang/category_qita_{{page}}.html" 193 | }, 194 | { 195 | "Name": "古代言情", 196 | "Url": "/shucang/category_guyan_{{page}}.html" 197 | }, 198 | { 199 | "Name": "现代言情", 200 | "Url": "/shucang/category_xianyan_{{page}}.html" 201 | }, 202 | { 203 | "Name": "幻想奇缘", 204 | "Url": "/shucang/category_huanqing_{{page}}.html" 205 | } 206 | ], 207 | "NeedDetail": true, 208 | "Range": "div[id='main'] ul li", 209 | "Repair": [ 210 | { 211 | "Field": 1, 212 | "Position": "l", 213 | "Value": "https://www.shucangxsw.com" 214 | } 215 | ], 216 | "Request": { 217 | "Headers": [ 218 | { 219 | "Key": "Cookie", 220 | "Value": "sex=boy; UM_distinctid=; Hm_lvt_515594e47192411e200c46590aae2ffe=1642827980" 221 | } 222 | ] 223 | }, 224 | "BookName": { 225 | "Type": "text", 226 | "Rule": "span.s2 a" 227 | }, 228 | "BookUrl": { 229 | "Type": "href", 230 | "Rule": "span.s2 a" 231 | }, 232 | "BookAuthor": { 233 | "Type": "text", 234 | "Rule": "span[class='s4']" 235 | }, 236 | "LastChapterTitle": { 237 | "Type": "text", 238 | "Rule": "span[class='s3'] a" 239 | }, 240 | "LastChapterUrl": { 241 | "Type": "href", 242 | "Rule": "span[class='s3'] a" 243 | }, 244 | "Category": { 245 | "Type": "text", 246 | "Rule": "span[class='s1']", 247 | "Filter": "\\[|\\]" 248 | } 249 | } 250 | } -------------------------------------------------------------------------------- /sources/zhaishuyuan.json: -------------------------------------------------------------------------------- 1 | { 2 | "Id": "zhaishuyuan", 3 | "Name": "斋书苑", 4 | "WebUrl": "https://www.zhaishuyuan.org", 5 | "IsBookDetailEnabled": false, 6 | "IsExploreEnabled": true, 7 | "Charset": "utf-8", 8 | "Search": { 9 | "SearchUrl": "https://www.zhaishuyuan.org/search/", 10 | "DataType": "HTML", 11 | "Request": { 12 | "Method": "POST", 13 | "Body": "searchkey={{keyword}}", 14 | "DataType": "form" /*三种取值,form表示表格数据,raw表示文本数据,json表示JSON数据*/ 15 | }, 16 | "Range": "div[id='sitembox'] dl", 17 | "Repair": [ 18 | { 19 | "Field": 1, 20 | "Position": "l", 21 | "Value": "https://www.zhaishuyuan.org" 22 | } 23 | ], 24 | "Replace": [], 25 | "BookName": { 26 | "Type": "text", 27 | "Rule": "dd h3 a", 28 | "Filter": "" 29 | }, 30 | "BookUrl": { 31 | "Type": "href", 32 | "Rule": "dd h3 a", 33 | "Filter": "" 34 | }, 35 | "BookAuthor": { 36 | "Type": "text", 37 | "Rule": "dd[class='book_other'] span a", 38 | "Filter": "" 39 | }, 40 | "BookStatus": { 41 | "Type": "text", 42 | "Rule": "dd[class='book_other'] span:nth-child(2)", 43 | "Filter": "" 44 | }, 45 | "LastChapterTitle": { 46 | "Type": "text", 47 | "Rule": "dd[class='book_other']:nth-last-child(1) a", 48 | "Filter": "" 49 | }, 50 | "LastChapterUrl": { 51 | "Type": "href", 52 | "Rule": "dd[class='book_other']:nth-last-child(1) a", 53 | "Filter": "" 54 | }, 55 | "UpdateTime": { 56 | "Type": "text", 57 | "Rule": "dd[class='book_other']:nth-last-child(1) span", 58 | "Filter": "" 59 | }, 60 | "Category": { 61 | "Type": "text", 62 | "Rule": "dd[class='book_other'] span:nth-last-child(2)", 63 | "Filter": "" 64 | }, 65 | "BookDescription": { 66 | "Type": "text", 67 | "Rule": "dd[class='book_des']", 68 | "Filter": "" 69 | }, 70 | "BookCover": { 71 | "Type": "src", 72 | "Rule": "dt a img", 73 | "Filter": "" 74 | } 75 | }, 76 | "Chapter": { 77 | "Range": "div[id='readerlist'] ul li", 78 | "Repair": [ 79 | { 80 | "Field": 1, 81 | "Position": "l", 82 | "Value": "https://www.zhaishuyuan.org" 83 | }, 84 | { 85 | "Field": 7, 86 | "Position": "l", 87 | "Value": "https://www.zhaishuyuan.org" 88 | } 89 | ], 90 | "Title": { 91 | "Type": "text", 92 | "Rule": "a", 93 | "Filter": "" 94 | }, 95 | "Url": { 96 | "Type": "href", 97 | "Rule": "a", 98 | "Filter": "" 99 | } 100 | }, 101 | "ChapterContent": { 102 | "Range": "div[id='center']", 103 | "Content": { 104 | "Type": "text", 105 | "Rule": "div[id='content']", 106 | "Filter": "" 107 | }, 108 | "NextPage": { 109 | "Range": "div[class='jump'] a[id='next_url']", 110 | "Type": "href", 111 | "Filter": "", 112 | "Repair": [ 113 | { 114 | "Field": 1, 115 | "Position": "l", 116 | "Value": "https://www.zhaishuyuan.org" 117 | } 118 | ], 119 | "Match": { 120 | "Type": "text", 121 | "Rule": "div[class='jump'] a[id='next_url']", 122 | "Filter": "\\s*", 123 | "MatchRule": "下一页" 124 | } 125 | } 126 | }, 127 | "Explore": { 128 | "Categories": [ 129 | { 130 | "Name": "玄幻小说", 131 | "Url": "/category/xuanhuan_{{page}}.html" 132 | }, 133 | { 134 | "Name": "武侠仙侠", 135 | "Url": "/category/wuxia_{{page}}.html" 136 | }, 137 | { 138 | "Name": "都市小说", 139 | "Url": "/category/dushi_{{page}}.html" 140 | }, 141 | { 142 | "Name": "穿越小说", 143 | "Url": "/category/chuanyue_{{page}}.html" 144 | }, 145 | { 146 | "Name": "网游小说", 147 | "Url": "/category/wangyou_{{page}}.html" 148 | }, 149 | { 150 | "Name": "科幻小说", 151 | "Url": "/category/kehuan_{{page}}.html" 152 | }, 153 | { 154 | "Name": "悬疑小说", 155 | "Url": "/category/xuanyi_{{page}}.html" 156 | }, 157 | { 158 | "Name": "其它小说", 159 | "Url": "/category/qita_{{page}}.html" 160 | } 161 | ], 162 | "Range": "div[class=shulist] ul", 163 | "Repair": [ 164 | { 165 | "Field": 1, 166 | "Position": "l", 167 | "Value": "https://www.zhaishuyuan.org" 168 | } 169 | ], 170 | "Replace": [ 171 | { 172 | "Field": 2, 173 | "Old": "/book/(\\d+)/(\\d+)", 174 | "New": "https://img.zhaishuyuan.org/{{1}}/{{2}}/{{2}}s.jpg" 175 | } 176 | ], 177 | "BookName": { 178 | "Type": "text", 179 | "Rule": "li[class='three'] a" 180 | }, 181 | "BookUrl": { 182 | "Type": "href", 183 | "Rule": "li[class='three'] a" 184 | }, 185 | "BookCover": { 186 | "Type": "href", 187 | "Rule": "li[class='three'] a" 188 | }, 189 | "BookAuthor": { 190 | "Type": "text", 191 | "Rule": "li[class='four'] a" 192 | }, 193 | "LastChapterTitle": { 194 | "Type": "title", 195 | "Rule": "li[class='three'] span a" 196 | }, 197 | "LastChapterUrl": { 198 | "Type": "href", 199 | "Rule": "li[class='three'] span a" 200 | }, 201 | "Category": { 202 | "Type": "text", 203 | "Rule": "li[class='two']", 204 | "Filter": "\\[|\\]" 205 | }, 206 | "UpdateTime": { 207 | "Type": "text", 208 | "Rule": "li[class='six']" 209 | } 210 | } 211 | } --------------------------------------------------------------------------------