起点读书限免+本章说

http://101.200.42.234:15380

wu-daweiawsf (13540)05/09 19:18

勿下载,修改源变量值切换评论页数
二维码导入
{
    "bookSourceComment": "勿下载,修改源变量值切换评论页数",
    "bookSourceName": "起点读书限免+本章说",
    "bookSourceType": 0,
    "bookSourceUrl": "http:\/\/101.200.42.234:15380",
    "concurrentRate": "1\/2000",
    "customButton": false,
    "customOrder": 1,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": false,
    "eventListener": false,
    "header": "{\"User-Agent\":\"Mozilla\/mobile QDReaderAndroid\/7.9.248\/804\/1000023\"}",
    "lastUpdateTime": "1778325499477",
    "loginUi": "[\n    {\n        \"name\": \"cdkey\",\n        \"title\": \"卡密\",\n        \"type\": \"text\",\n        \"default\": \"\"\n    }\n]\n",
    "loginUrl": "<js>\nfunction login(){\n    var cdkey = String(source.getLoginInfoMap().get(\"cdkey\"));\n    if(!cdkey){\n     \n        return;\n    }\n \n    source.put(\"cdkey\", cdkey);\n   \n}\nlogin();\n<\/js>\n",
    "respondTime": 180000,
    "ruleBookInfo": {
        "author": "$.authorName||'未知作者'",
        "canReName": "true",
        "coverUrl": "$.coverUrl||''",
        "intro": "$.description||'无简介'",
        "name": "$.bookName||'未知书名'",
        "tocUrl": "\n\n<js>\n\nvar cdkey = String(source.getLoginInfoMap().get(\"cdkey\"))\nparams=java.get(\"myBookId\");\n\n'http:\/\/101.200.42.234:15380\/getCatalog?bookId='+params+'&token='+cdkey;\n\n\n<\/js>",
        "wordCount": "wordsCount"
    },
    "ruleContent": {
        "content": "$.content",
        "payAction": "\nvar arr = baseUrl.match(\/bookId=(\\d+)\/);\nvar bid = arr ? arr[1] : \"\";\n\nlet chapterMatch = baseUrl.match(\/chapterId=(\\d+)\/i);\n\n let chapterid = chapterMatch ? chapterMatch[1] : \"\";\n\nlet bookid = bid;\n \n let token = source.get(\"cdkey\");\n\nlet pg = source.getVariable()&&java.get(\"commentPage\");\n\nlet pz = 15;\nlet cursorid = \"0\";\n\nfunction loadPage(pg) {\n    let url = \"http:\/\/101.200.42.234:15380\/chapterreviewparagraph?bookid=\" + bookid\n        + \"&chapterid=\" + chapterid\n        + \"&pg=\" + pg\n        + \"&pz=\" + pz\n        + \"&cursorid=\" + cursorid\n        + \"&token=\" + token;\n\n    let res = java.ajax(url);\n    return JSON.parse(res);\n}\n\n\nlet json = loadPage(pg);\n\nlet commentHTML = '';\n\nfunction cleanContent(str) {\n    return (str || '').replace(\/\\[fn=\\d+\\]\/g, '').trim();\n}\n\nlet moreSegs = json.Data.ParagraphsInfos || [];\nfor (let seg of moreSegs) {\n    let list = seg.DataList || [];\n    let quote = list[0]?.RefferContent || \"段落评论\";\n    \n    let blockImgHtml = \"\";\n    if (seg.BlockImgUrl) {\n        blockImgHtml = `<img src=\"${seg.BlockImgUrl}\" class=\"chapter-img\" style=\"max-width:100%;border-radius:8px;margin:8px 0;display:block;\">`;\n    }\n\n    commentHTML += `\n    <div class=\"segment\">\n        <div class=\"quote\">${quote}<\/div>\n        ${blockImgHtml}`;\n\n    for (let c of list) {\n        if (!c.Id) continue;\n        let avatar = c.UserHeadIcon || '';\n        let name = c.UserName || '匿名';\n        let ip = c.IpLocation ? `(${c.IpLocation})` : '';\n        let content = cleanContent(c.Content);\n        let isReply = c.IsReplyReview === 1 || c.RefferCommentId > 0;\n        let style = isReply ? \"margin-left:24px;\" : \"\";\n\n        commentHTML += `\n        <div class=\"comment\" style=\"${style}\">\n            <img class=\"avatar\" src=\"${avatar}\">\n            <div class=\"comment-body\">\n                <div class=\"name\">${name} ${ip}<\/div>\n                <div class=\"content\">${content}<\/div>\n            <\/div>\n        <\/div>`;\n    }\n    commentHTML += '<\/div><div class=\"split\"><\/div>';\n}\n\ncommentHTML += `\n<div style=\"text-align:center;margin:30px 0;color:#888;\">\n    当前第 ${pg} 页\n<\/div>`;\n\n\nlet html = `\n<!DOCTYPE html>\n<html>\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<title>第${pg}页-本章说<\/title>\n<style>\nbody{background:#1e1e1e;color:#fff;padding:16px;font-size:16px;line-height:1.6}\n.comment{display:flex;gap:10px;background:#2b2b2b;padding:12px 14px;border-radius:8px;margin-bottom:10px;align-items:flex-start}\n.avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0}\n.comment-body{flex:1}\n.name{color:#60d9ff;font-weight:bold}\n.content{margin-top:4px}\n.segment{margin-bottom:10px}\n.quote{background:#333;color:#bbb;padding:10px 14px;border-left:3px solid #777;border-radius:6px;margin-bottom:10px}\n.split{height:1px;background:#444;margin:20px 0}\n.chapter-img{max-width:100%;border-radius:8px;margin:8px 0;display:block}\n<\/style>\n<\/head>\n<body>${commentHTML}<\/body>\n<\/html>`;\n\nlet url = \"data:text\/html;base64,\" + java.base64Encode(html);\njava.startBrowser(url, \"本章说\");\n"
    },
    "ruleExplore": {},
    "ruleSearch": {
        "author": "$.authorName",
        "bookList": "$.bookList[*]",
        "bookUrl": "<js>\nvar cdkey = String(source.getLoginInfoMap().get(\"cdkey\"))\nparams={{$.bookId}}\njava.put(\"myBookId\", params);\n'http:\/\/101.200.42.234:15380\/getCatalog?bookId='+params+'&token='+cdkey;\n<\/js>",
        "coverUrl": "https:\/\/qidian.qpic.cn\/qdbimg\/349573\/{$.bookId}\/600",
        "intro": "$.description||'无简介'",
        "kind": "subCategoryName&&categoryName",
        "name": "bookName",
        "wordCount": "$.wordsCount"
    },
    "ruleToc": {
        "chapterList": "$.catalog[*]",
        "chapterName": "$.chapterName",
        "chapterUrl": "@js:\nvar arr = baseUrl.match(\/bookId=(\\d+)\/);\nvar bid = arr ? arr[1] : \"\";\nsource.put(\"bid\", bid);\n\n\nvar cdkey = String(source.getLoginInfoMap().get(\"cdkey\"))\n\n\nc='http:\/\/101.200.42.234:15380\/getchapter?bookId='+bid+'&chapterId={{$.chapterId}}'+'&token='+cdkey\n\n",
        "isVip": "$.isVip||0",
        "updateTime": "DisplayTime"
    },
    "searchUrl": "@js:\n'http:\/\/101.200.42.234:15380\/searchbook?keyword={{key}}&p={{page}}&token='+source.get(\"cdkey\")",
    "weight": 0
}
广告