51漫画
https://51acgs.com
yezechuandl (3004)1小时前
//2026.3.22 夜泽川
{
"bookSourceComment": "\/\/2026.3.22 夜泽川",
"bookSourceGroup": "自制,漫画",
"bookSourceName": "51漫画",
"bookSourceType": 2,
"bookSourceUrl": "https:\/\/51acgs.com",
"coverDecodeJs": "function decryptCover(src) {\n const key = \"102_53_100_57_54_53_100_102_55_53_51_51_54_50_55_48\"\n .split(\"_\").map(n => String.fromCharCode(parseInt(n))).join(\"\");\n const iv = \"57_55_98_54_48_51_57_52_97_98_99_50_102_98_101_49\"\n .split(\"_\").map(n => String.fromCharCode(parseInt(n))).join(\"\");\n\n return java.createSymmetricCrypto(\"AES\/CBC\/PKCS5Padding\", key, iv).decrypt(src);\n}\ndecryptCover(result);",
"customButton": false,
"customOrder": 704,
"enabled": true,
"enabledCookieJar": true,
"enabledExplore": true,
"eventListener": false,
"exploreUrl": "@js:\nconst result = [{\n \"title\": \"全部\",\n \"url\": \"\/browser\/comic?&page={{page}}\",\n \"style\": {\n \"layout_flexBasisPercent\": 1,\n \"layout_flexGrow\": 1\n }\n}];\nconst n = JSON.parse(org.jsoup.Jsoup.parse(java.ajax(source.key + '\/category')).select('script').toArray().find(e => String(e).includes('类别列表')).html());\nn.itemListElement.forEach(e => result.push({\n title: e.name,\n url: e.url,\n \"style\": {\n \"layout_flexGrow\": 1,\n \"layout_flexBasisPercent\": 0.25\n }\n}));\nJSON.stringify(result);",
"lastUpdateTime": "1781571933322",
"respondTime": 180000,
"ruleBookInfo": {
"author": ".comic-content@a[href^=\"\/creator\"]@text",
"coverUrl": ".comic-poser-wrap@img@data-src",
"intro": ".comic-cate-intor@html",
"kind": ".comic-content@.my-1@.text-gray-light@ownText##^.*:",
"lastChapter": ".my-1.-1@a@text",
"name": ".comic-content@.text-primary@text"
},
"ruleContent": {
"content": ".comics@img@html",
"imageDecode": "function decryptImage(src) {\n const key = \"102_53_100_57_54_53_100_102_55_53_51_51_54_50_55_48\"\n .split(\"_\").map(n => String.fromCharCode(parseInt(n))).join(\"\");\n const iv = \"57_55_98_54_48_51_57_52_97_98_99_50_102_98_101_49\"\n .split(\"_\").map(n => String.fromCharCode(parseInt(n))).join(\"\");\n\n const cipher = java.createSymmetricCrypto(\"AES\/CBC\/NoPadding\", key, iv)\n return cipher.decrypt(src);\n}\ndecryptImage(result);"
},
"ruleExplore": {},
"ruleSearch": {
"bookList": ".comicRwdList > figure > a",
"bookUrl": "href",
"checkKeyWord": "++https:\/\/51acgs.com\/comic\/11778",
"coverUrl": "img@data-src",
"kind": "span@text",
"name": "figcaption@text"
},
"ruleToc": {
"chapterList": "<js>\nconst scripts = Array.from(java.getElement(\"script\")).filter(e => String(e).includes('目录'));\nconst c = scripts[0];\n\nd = c \n ? JSON.parse(c.html()).itemListElement.map(e => ({ title: e.name, url: e.url }))\n : [{ title: book.name, url: java.getString(\".btn-read@href\", src) }];\n\nJSON.stringify(d);\n<\/js>\n$[*]",
"chapterName": "$.title",
"chapterUrl": "$.url"
},
"searchUrl": "https:\/\/51acgs.com\/search\/result\/comics?keyword={{key}}&page={{page}}",
"weight": 0
}