📖微博

https://m.weibo.cn

guaner001125 (317)07/28 17:42

网页能打开看的基本能看,其他bug未知
搜索格式如下
①综合:直接搜索

以下需关闭精确搜索
②用户:@用户名@
③超话:%超话名%
④话题:#话题名#

更改下面数字可查看评论(不登录只有20条,登录后条数太多会请求频繁导致获取正文为空【可以选择清除cookie回到未登录状态】)

是/否开启评论:是20条



改版阅读支持功能:
1、点击作者名进入作者动态列表
2、点击书名跳转订阅源正文【需配合【微博】订阅源】
3、长按书名用订阅源查看作者动态列表【需配合【微博】订阅源】
二维码导入
{
    "bookSourceComment": "网页能打开看的基本能看,其他bug未知\n搜索格式如下\n①综合:直接搜索\n\n以下需关闭精确搜索\n②用户:@用户名@\n③超话:%超话名%\n④话题:#话题名#\n\n更改下面数字可查看评论(不登录只有20条,登录后条数太多会请求频繁导致获取正文为空【可以选择清除cookie回到未登录状态】)\n\n是\/否开启评论:是20条\n\n\n\n改版阅读支持功能:\n1、点击作者名进入作者动态列表\n2、点击书名跳转订阅源正文【需配合【微博】订阅源】\n3、长按书名用订阅源查看作者动态列表【需配合【微博】订阅源】",
    "bookSourceGroup": "③📖  论坛",
    "bookSourceName": "📖微博",
    "bookSourceType": 0,
    "bookSourceUrl": "https:\/\/m.weibo.cn",
    "bookUrlPattern": "https:\/\/m.weibo.cn\/detail\/\\d+|https:\/\/m.weibo.cn\/api\/container\/getIndex.*?profile_uid:.*",
    "concurrentRate": "1500",
    "customButton": false,
    "customOrder": 89,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": true,
    "exploreUrl": "                                      超话                                        ::\n罗小黑战记::https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=1008081602c610a58c2bd3545101db2907ef87_-_feed&page={{page}}\n\n\n                                      用户                                        ::\n一条废狗狗狗狗::https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=1076036055804589_-_WEIBO_SECOND_PROFILE_WEIBO&luicode=10000011&lfid=1076036055804589_-_WEIBO_SECOND_PROFILE_WEIBO&page_type=03&page={{page}}\n                                      话题                                        ::\n罗小黑战记::https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=231522type%3D1%26t%3D10%26q%3D%23%E7%BD%97%E5%B0%8F%E9%BB%91%E6%88%98%E8%AE%B0%23&isnewpage=1&luicode=10000011&lfid=100103type%3D38%26q%3D%E7%BD%97%E5%B0%8F%E9%BB%91%E6%88%98%E8%AE%B0%26t%3D&page={{page}}",
    "header": "@js:\nco = String(cookie.getCookie(\"https:\/\/m.weibo.cn\")).replace(\/WBPSESS=.*?;?\/,'');\ncookie.setCookie(\"https:\/\/m.weibo.cn\",co);\nJSON.stringify({\n  \"User-Agent\": \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/128.0.0.0 Safari\/537.36\",\n  \"sec-ch-ua-platform\":\"\\\"Android\\\"\",\n  \"x-requested-with\":\"XMLHttpRequest\",\n  \"mweibo-pwa\":\"1\",\n  \"Referer\":\"https:\/\/m.weibo.cn\",\n  \"Cookie\":co\n})",
    "homepageModules": "",
    "jsLib": "function getHuatiUrl(id,name){\n    return `https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=231522type%3D${id}%26t%3D10%26q%3D%23${name}%23&isnewpage=1&luicode=10000011&lfid=100103type%3D1%26q%3D${name}&page_type=searchall&page=1`;\n}\n \nfunction getUserSort(id,name){\n\tconst {java} = this;\n         let m = \"https:\/\/m.weibo.cn\";\n         let nname = \"👤\"+name;\n         let url = m+ \"\/api\/container\/getIndex?containerid=230413\"+id+\"_-_WEIBO_SECOND_PROFILE_WEIBO&page_type=03&since_id=\";\n         let userTopUrl = m+\"\/api\/container\/getIndex?type=uid&value=\"+ id;\n            try{\n                let userJsonData = java.ajax(userTopUrl);\n                userJsonData = JSON.parse(userJsonData||\"{}\");\n              if(userJsonData.ok===1){\n                  let tabsInfo = userJsonData.data.tabsInfo;\n                  let tabs = tabsInfo.tabs;\n                  let uu = {}\n                  let base = m+\"\/api\/container\/getIndex?type=uid&value=\";\n                  uu[nname+\"的微博\"] = url;\n                  tabs.forEach(x=>{\n                      switch(x.title){\n                           case \"精选\":\n                               url =  base+id+\"&containerid=231002\"+id+\"_-_HOTMBLOG&page=1\"\n                            break;\n                            case \"视频\":       \n                            case \"相册\":\n                                url = base+id+\"&containerid=\"+x.containerid+\"&since_id=\";\n                             break;\n                         }\n                       x.title!==\"微博\"? uu[x.title] = url:null\n                  });\n                  url = JSON.stringify(uu);\n              }\n              }catch(e){\n              \tjava.log(e)\n              }\n              return url\n}\n\nfunction getSuperUrl(name,url){\n \t  const {java} = this;\n    let jsonAjax = java.ajax(url);\n    let jsonData = JSON.parse(jsonAjax);\n    let channel_list = jsonData.data.pageInfo.cardlist_head_cards[0].channel_list;\n    let data = {};\n    channel_list.forEach(tab=>{\n         let u = `https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=`;\n        if(tab.id == \"feed\"){\n            data[name+\"的📝帖子\"] = u+tab.containerid+\"&since_id=\";\n            data[\"📤帖子\"] = u+tab.containerid.replace(\/feed\/,'sort_time')+\"&since_id=\";\n            data[\"🔥帖子\"] = u+tab.containerid.replace(\/feed\/,'recommend')+\"&since_id=\";\n            data[\"💡帖子\"] = u+tab.containerid.replace(\/feed\/,'soul')+\"&since_id=\";\n        }else if(\/\\d+\/.test(tab.id)){\n            data[\"📝\"+tab.name] = u+tab.containerid+\"&since_id=\";\n            data[\"📤\"+tab.name] = u+tab.containerid.replace(\/comment_sort\/,'status_sort')+\"&since_id=\";\n        }else{\n            data[tab.name] = u+tab.containerid+\"&since_id=\";\n        }\n    })\n        \n    return JSON.stringify(data)\n            \n}",
    "lastUpdateTime": "1785231758982",
    "loginUrl": "https:\/\/m.weibo.cn",
    "respondTime": 195470,
    "ruleBookInfo": {
        "author": "@js:\nresult = \/screen_name\":\\s*\"\/.test(result)?String(result).match(\/\"screen_name\":\\s*\"([^\"]+)\"\/)[1]:\"\";\nresult = \/\\\\u[\\da-z]{4}\/.test(result)?unescape(result.replace(\/\\\\\/g,'%')):result",
        "canReName": "1",
        "init": "@js:\nif(java.getString(\"$.errno||$.ok\")==\"-100\"){\n\t    let url = String(java.getString(\"$.url\"));\t\n\t\tif(\/signin\/.test(url)){\n\t\t\tjava.longToast(\"请登录后刷新列表\")\n\t\t\tjava.startBrowser(\"https:\/\/m.weibo.cn\",\"验证\");        \t\n\t\t}else{\n\t        java.longToast(\"验证通过后请刷新列表\");\n          java.startBrowser(url,\"验证\");\n    }\n}\n\t\nif(result ==\"\"){\t\n\tjava.longToast(\"验证后请刷新列表\");\n\tjava.startBrowser(\"https:\/\/m.weibo.cn\",\"登录\");\n}\t\n\nco = String(cookie.getCookie(\"https:\/\/m.weibo.cn\")).replace(\/WBPSESS=.*?;?\/,'');\ncookie.setCookie(\"https:\/\/m.weibo.cn\",co);\nresult",
        "intro": "@js:\n\nresult = \/\"text\": \".*\",\/.test(result)?String(result).match(\/ \"text\": \"(.*)\",\/)[1]:\"\";\n\nif(\/extparam=\/.test(baseUrl)){\n\tcontainerid = baseUrl.match(\/containerid=(.*)\/)[1];\n\tresult += \"\\n---复制下方文字,将#超话#粘贴进发现规则---\\n\"+book.name+`::https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=${containerid}_-_feed&page={\\{page}}`\n\t}\n\nif(\/search\\?\/.test(baseUrl)){\n\tcontainerid = baseUrl.replace(\/http.*?\\?\/,'https:\/\/m.weibo.cn\/api\/container\/getIndex?');\n\tresult += \"\\n---复制下方文字,将#话题#粘贴进发现规则---\\n\"+book.name+`::${containerid}&page={\\{page}}`\n\t}\n\nif(\/u\\\/\/.test(baseUrl)){\n\tcontainerid = baseUrl.match(\/u\\\/(\\d+)\/)[1];\n\tresult += \"\\n---复制下方文字,将#用户#粘贴进发现规则---\\n\"+book.name+`::https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=107603${containerid}_-_WEIBO_SECOND_PROFILE_WEIBO&page_type=03&page={\\{page}}`\n\t}\nresult;",
        "kind": "@js:\nlet uid = result.match(\/\"id\": (\\d+),\\s*\"screen_name\":\/)?.[1] ?? \"\";\n\/\/uid = \/profile_uid:\/.test(baseUrl)?baseUrl.match(\/profile_uid:(\\d+)\/)[1]:uid;\nbook.putVariable(\"custom\",uid);",
        "name": "<js>\nresult = \/\"text\": \".*\",\/.test(result)?String(result).match(\/ \"text\": \"(.*)\",\/)[1]:\"\";\nif(baseUrl.includes(\"profile_uid:\")){\n\t\t   result = src\n}\t  \nresult\n<\/js>\ntext||$.data.scheme\n<js>\nresult = \/&q=.*?&di\/.test(result)?decodeURIComponent(result.match(\/&q=(.*?)&\/)[1]):result;\n\nresult.length > 30?result.replace(\/^(.{0,30})\/,'$1..... '):result\n<\/js>",
        "tocUrl": "@js:baseUrl"
    },
    "ruleContent": {
        "callBackJs": "if(event == \"longClickAuthor\"){\n    let burl = String(book.bookUrl);\n    if(burl.includes(\"detail\/\")){   \t      \n\t let svg=String(java.base64Encode(`<svg width=\"1190\" height=\"300\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><rect width=\"100%\" height=\"100%\" fill=\"#ffffff\"\/><text x=\"200\" y=\"100\" font-family=\"Arial, sans-serif\" font-size=\"70\" fill=\"#333\" font-weight=\"bold\">输入要搜索的关键词<\/text><\/svg>`));\t       \n        let key = java.getVerificationCode('data:image\/svg+xml;base64,'+svg);\n        let uid = book.getVariable(\"custom\");                \n        let searchurl = `https:\/\/m.weibo.cn\/api\/container\/getIndex?disable_sug=1&diabled_eject_animation=1&disable_hot=0&trans_bg=0&disable_history=1&container_ext=profile_uid:${uid}%7Cnettype:%7Cgps_timestamp:{{Math.ceil(Date.now()\/1000)}}&containerid=100103type%3D401%26t%3D10%26q%3D${encodeURIComponent(key)}&page_type=searchall&page={{page}}`;\n        let u = `legado:\/\/import\/addToBookshelf?src=${encodeURIComponent(searchurl)},{\"origin\":\"📖微博\"}`;\n        java.copyText(key+\"::\"+searchurl);\n        \/\/java.openUrl(u);\n        true\n        }\n\t}\n\nif(event == \"clickAuthor\"){\n    let burl = String(book.bookUrl);\n    let uid = book.getVariable(\"custom\");\n    if(burl.includes(\"detail\/\")){   \t\n        let url = `https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=107603${uid}_-_WEIBO_SECOND_PROFILE_WEIBO&page_type=03&page={\\{page}}`;\n         java.open(\"explore\",url,book.author)\n         true\n    }\n}\n    \n    \n    \nif(event == \"clickBookName\"){\n    let burl = String(book.bookUrl);\n    let url;\n    if(burl.includes(\"detail\/\")){   \t      \n    \t   let url = burl.replace(\/m.weibo.cn\/,'weibo.com');  \n           java.open(\"rss\",url,\n    \t          book.name,\n    \t        \"https:\/\/m.weibo.cn#微博整合\");    \t      \n    }else if(burl.includes(\"\/u\/\")){\n           let uid = burl.match(\/\\\/u\\\/(\\d+)\/)[1];\n           url = `https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=107603${uid}_-_WEIBO_SECOND_PROFILE_WEIBO&page_type=03&page={\\{page}}`;\n    }else if(burl.includes(\"p\/index\")){\n           let containerid = burl.match(\/containerid=(.*?)&\/)[1];\n           url = `https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=${containerid}_-_feed&page={\\{page}}`;\n    }else if(burl.includes(\"search?\")){\n            let u = decodeURIComponent(burl);\n            let id = u.match(\/q=(.*?)&\/)[1];\n            url = `https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=231522type%3D1%26t%3D10%26q%3D${id}&isnewpage=1&luicode=10000011&lfid=100103type%3D38%26q%3D${id.replace(\/^#|#$\/g,'')}%26t%3D&page={\\{page}}`;\n    }\n     if(!burl.includes(\"detail\/\")) java.open(\"explore\",url,book.name)\n    true\n}\n\n\nif(event == \"longClickBookName\"){\n\t let uid = book.getVariable(\"custom\");\t\n\t let burl = String(book.bookUrl);\n     let url;\n\t if(\/detail\\\/|\\\/u\\\/\/.test(burl)){\n\t \tif(burl.includes(\"\/u\/\"))\n\t \tuid = burl.match(\/\\\/u\\\/(\\d+)\/)[1];\n         java.toast(\"跳转微博订阅源,加载中.....\");   \n         url = getUserSort(uid,\n             String(book.author)||book.name);\n\t }else if(burl.includes(\"p\/index\")){\n         java.toast(\"跳转微博订阅源,加载中.....\");   \n         let containerid = burl.match(\/containerid=(.*?)&\/)[1];\n         let openUrl = `https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=${containerid}_-_feed`;\n         url = getSuperUrl(book.name,openUrl);\n     }else if(burl.includes(\"search?\")){\n         let u = decodeURIComponent(burl);\n         let name = u.match(\/q=#(.*?)#&\/)[1];\n\t     url = JSON.stringify({\n                [\"💬\"+name+\"的综合\"]: getHuatiUrl(1,name),\n                \"实时\": getHuatiUrl(61,name),\n                \"图片\": getHuatiUrl(63,name),\n                \"视频\": getHuatiUrl(64,name),\n                \"关注\": getHuatiUrl(62,name),\n                \"热门\": getHuatiUrl(60,name)\n            });\n     }\n     java.open(\"sort\",url,\"\",\"https:\/\/m.weibo.cn#微博整合\");\n\t true\n}\n\nif(event == \"clickShareBook\"){\n\tlet burl = String(book.bookUrl);\n    if(burl.includes(\"detail\/\")){   \t    \n    \t    let text = `我正在看博主【${book.author}】的文章《${book.name}》\\n文章链接:${burl}`;\n    \t    java.copyText(text);\n    \t    java.toast(\"已复制,粘贴分享\\n\"+text);\n    \t}\n    \ttrue\n}",
        "content": "<js>\ntry{\n\t\tif(\/timeline_card_small_article_default\/.test(result)){\n\t\t\tlet u = result.match(\/\"page_url\": \"([^\"]+)\",\/)[1]+\",{'webView':true}\";\t          \n\t\t\tbaseUrl = u.replace(\/weibo.com\/,'m.weibo.cn');\t\t\t\n\t\t\tlet r = String(java.ajax(u));\t\t\t\t\t\t\n\t\t\tsrc = r;\n\t\t\tresult = r;\n\t\t\tjava.setContent(r);\t\t\n}\n\t\ncimg=[];\nif(String(result).match(\/ \"text\": \"(.*)\",\/)){\nb=String(result).match(\/ \"text\": \"(.*)\",\/)[1];}\nelse{b=''}\n\nif(String(result).match(\/\"size\":\\s*\"[^\"]+\",\\s*\"url\":\\s*\"[^\"]+\"\/g)){\na=String(result).match(\/\"size\":\\s*\"[^\"]+\",\\s*\"url\":\\s*\"[^\"]+\"\/g);\nfor (i=0;i<a.length;i++){\n       cimg.push(a[i].match(\/url\":\\s*\"([^\"]+)\"\/)[1])\n    }\n    \nhtml='';\nfor(i in cimg){\n                   let originalImg = cimg[i]\n               originalImg = originalImg.replace(\/(http.*?.sinaimg.cn\\\/).*?\\\/\/,'$1oslarge\/');\n    \nhtml += '<img src=\"'+originalImg+'\">\\n'\n}}else{html=''}\n\n\nif(\/title=%E7%BC%96%E8%BE%91%E8%AE%B0%E5%BD%95\/.test(baseUrl)){\n\thtml = \"\";\n\tjson = JSON.parse(result).data.cards;\n\tjson.forEach(x=>{\n\t\t     let mblog = x.card_group[0].mblog;\n\t\t     if(!mblog)return\n\t\t     let time = mblog.created_at;\n\t\t   \nconst timeStr = mblog.created_at\n\nconst date = new Date(timeStr);\nconst year = date.getFullYear();\nconst month = String(date.getMonth() + 1).padStart(2, '0');\nconst day = String(date.getDate()).padStart(2, '0');\nconst hours = String(date.getHours()).padStart(2, '0');\nconst minutes = String(date.getMinutes()).padStart(2, '0');\nconst seconds = String(date.getSeconds()).padStart(2, '0');\n\nconst customFormat = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;\t\t   \t\t       \n\t\t     let picsJ = mblog.pics;\n\t\t     let pics = \"\";\n\t\t     \n\t\t     if(picsJ)picsJ.forEach(y=>{\n                 let originalImg = y.large.url;\n               originalImg = originalImg.replace(\/(http.*?.sinaimg.cn\\\/).*?\\\/\/,'$1oslarge\/');\n    \n\t\t     \t     pics +=\"<img src=\\\"\"+ originalImg+\"\\\">\\n\"\t     \t\n\t\t     \t})\n\t\t     html += \"-⬇️ 编辑于\"+customFormat+\" ⬇️ -\\n\"+mblog.text+\"\\n\"+pics+\"\\n&lrm;\\n\";\n\t\t})\n\tresult = html\n\t}\n\n\nif(\/timeline_card_small_article_default\/.test(result)&&!\/title=%E7%BC%96%E8%BE%91%E8%AE%B0%E5%BD%95\/.test(baseUrl)){\n\t$ = result.match(\/\"page_info\":\\s*(\\{[\\s\\S]+?\\}),\\s+\"bid\/)[1];\n\t$ = JSON.parse($);\n\thtml = '<img src=\"'+$.page_pic.url+'\">\\n'\n}\n   \nif(!baseUrl.match(\/ttarticle\/)&&!\/title=%E7%BC%96%E8%BE%91%E8%AE%B0%E5%BD%95\/.test(baseUrl)){\n\nresult = org.jsoup.Jsoup.parse(b).html()+'\\n'+html+java.getString(\"@@class.h5-4con@html||class.error_msg@text\");\n\n\n\n}else if(!\/title=%E7%BC%96%E8%BE%91%E8%AE%B0%E5%BD%95\/.test(baseUrl)){\tresult=java.getString(\"@@class.f-art@html||class.error_msg@text\");\nif(\/var htmlStr\/.test(src)){\n\tresult = unescape(src.match(\/var htmlStr = filterXSS\\(\"([\\s\\S]+?)\", {\/)[1].replace(\/\\\\u\/g,'%u').replace(\/<\\\\\\\/.*?>|\\\\n\/g,'\\n'));\n               \n\t}\n\n\n}\n\nif(\/暂无目录......\/.test(chapter.title)){\n\t\n\tresult = book.intro\n\t}\n\n\nif(\/是\\d+条\/.test(source.bookSourceComment) && !baseUrl.match(\/ttarticle\/) && \/detail\/.test(baseUrl)){\npage = source.bookSourceComment.match(\/是(\\d+)条\/)[1];\n\npage = Math.ceil(page\/20);\nmid = baseUrl.match(\/(\\d+)$\/)[1];\nmax_id=\"0\";\ncomments=\"\";\ncount = 0;\n\nfor(j=1;j<=page;j++){\ncommentsurl = `https:\/\/m.weibo.cn\/comments\/hotflow?id=${mid}&mid=${mid}&max_id=${max_id}&max_id_type=0`;\nvar times = Math.round(new Date().getTime() \/ 1000)\nwhile(Math.round(new Date().getTime() \/ 1000)-times<1){}\nhh= java.ajax(commentsurl);\nif(\/体验微博客户端\/.test(hh)){\n\th={};\n\tpage = 2;\n\t}else{\n\th=\/<title>登录 - 微博<\\\/title>\/.test(hh)?{}:JSON.parse(hh);\n\tif(\/<title>登录 - 微博<\\\/title>\/.test(hh)){java.toast(\"更多评论请登录\");break;}\n\t\t}\nif(h.ok==1){\nlist=h.data.data;\nmax_id = h.data.max_id;\nif(j==1){\ntotal = Math.ceil(h.data.total_number\/20);\npage= page<=total?page:total;\n}\n    for(i=0;i<list.length;i++){\n    \t\n    \tdetails=\"\";\n    if(list[i].pic!=undefined){\n    pic=list[i].pic.large.url;\n    pic = originalImg.replace(\/(http.*?.sinaimg.cn\\\/).*?\\\/\/,'$1oslarge\/');\n    details = `<br><img src=\"${pic}\"><br>`\n    \t\n}\ncount += 1;\ncomments +=\"\\n--@\"+list[i].user.screen_name+\"@--\\n\"+list[i].text+details;\n      }}\n}  \n result + comments\n\n}\n\n}catch(e){\n\tjava.log(\"错误: \"+e)\n\t}\n\t\n<\/js>",
        "imageDecode": "var Magua = new JavaImporter();\nMagua.importPackage(\n    Packages.java.io,\n    Packages.android.graphics\n);\n\nwith(Magua) {    \n    var img = BitmapFactory.decodeByteArray(result, 0, result.length);\n    var originalWidth = img.getWidth();\n    var originalHeight = img.getHeight();    \n    if (originalWidth > originalHeight * 4.5) {    \n        var newWidth = originalHeight;\n        var newHeight = originalWidth;\n        var newImg = Bitmap.createBitmap(newWidth, newHeight, Bitmap.Config.ARGB_8888);       \n        var canvas = new Canvas(newImg);\n        var matrix = new Matrix();\n        matrix.setRotate(90);\n        matrix.postTranslate(newWidth, 0); \n        canvas.drawBitmap(img, matrix, null);        \n        var outputStream = new ByteArrayOutputStream();\n        newImg.compress(Bitmap.CompressFormat.PNG, 100, outputStream);\n        result = outputStream.toByteArray();\n    }\n}\nresult",
        "imageStyle": "FULL",
        "nextContentUrl": "<js>\nif(\/title=%E7%BC%96%E8%BE%91%E8%AE%B0%E5%BD%95\/.test(baseUrl)){\n\tpage = JSON.parse(src).data.cardlistInfo.page;\n\tif(page!=null){\n\t\tresult = baseUrl.replace(\/&page=\/g,'')+\"&page=\"+page;\n\t\t}\n\t}\n\n<\/js>",
        "replaceRegex": "##<img.*?src=\"https:\/\/.*?small.*?default.*?\">|https:\/\/m.weibo.cn\\\\\"|\\\\\"|<!---->\n<js>\nresult = result.replace(\/src=\"([^\"]+)\"\/g, function(match, srcUrl) {\n    if (srcUrl.includes('expression')) {\n      return `src=\"${srcUrl},{\"style\":\"text\",\"headers\":{\"referer\":\"https:\/\/m.weibo.cn\"}}\"`;\n    } \n    return `src=\"${srcUrl},{\"headers\":{\"referer\":\"https:\/\/m.weibo.cn\"}}\"`;\n})\n.replace(\/(--@.*?@--)\/g,'\\n&lrm;\\n$1');\n<\/js>\n##<img src=\"https:\/\/m.weibo.cn\/detail\/.*?\">",
        "title": "@js:result.match(\/\"content1\": \"([^\"]+)\",\/)?.[1] ?? \"\""
    },
    "ruleExplore": {},
    "ruleSearch": {
        "bookList": "<js>\nif(java.getString(\"$.msg\")!=\"\"){\njava.toast(java.getString(\"$.msg\"));\n}\nresult;\n<\/js>\n$.data.cards[*]&&$.data.cards[*].card_group[*]",
        "bookUrl": "$.mblog.id\n@js:\nif(\/^\\d+$\/.test(result)){\nresult=\"https:\/\/m.weibo.cn\/detail\/\"+result\n}else{\n\tresult = \"{{$.scheme}}\";\n\t}",
        "checkKeyWord": "https:\/\/m.weibo.cn\/api\/container\/getIndex?disable_sug=1&diabled_eject_animation=1&disable_hot=0&trans_bg=0&disable_history=1&container_ext=profile_uid:2054168601%7Cnettype:%7Cgps_timestamp:{{Math.ceil(Date.now()\/1000)}}&containerid=100103type%3D401%26t%3D20%26q%3D%E5%A4%B4%E6%9D%A1%E6%96%87%E7%AB%A0&page_type=searchall&page=1",
        "coverUrl": "{{$.mblog.page_info.page_pic.url||$.mblog.thumbnail_pic||$.mblog.user.profile_image_url||$.pic||$.user.profile_image_url}},{\"headers\":{\"referer\":\"https:\/\/m.weibo.cn\"}}",
        "intro": "$..text&&$.desc1&&$..description##\\n+|(?:<br \/>)+#~",
        "kind": "$.desc2&&$..verified_reason",
        "lastChapter": "$.mblog.created_at",
        "name": "$.mblog.text||$.title_sub||$.user.screen_name@js:result.replace(\/<.*?>\/g,\"\").match(\/(.{0,30}).*\/)[1]",
        "wordCount": "##timeline_card_small_article_default##有专栏###"
    },
    "ruleToc": {
        "chapterList": "<js>\n\nd=\/\"text\": \"(.*)\",\/.test(result)?String(result).match(\/ \"text\": \"(.*)\",\/)[1]:\"暂无目录\";\nb=d.replace(\/<.*?>\/g,\"\").replace(\/#.*?#\/g,\"\");\nc=baseUrl;\nl=[];\n\nedit_count = Number(\/\"edit_count\": \\d+\/.test(result)?result.match(\/\"edit_count\": (\\d+),\/)[1]:0);\n\n\nif(\/网页链接\/.test(d) || \/timeline_card_small_article_default\/.test(d)){\n\tif(\/timeline_card_small_article_default\/.test(d)){\n\t\tl.push({text:b.substring(0,10)+\"......\",href:c});\n\tl.push({\n\t\thref:result.match(\/\"page_url\": \"([^\"]+)\",\/)[1]+\",{'webView':true}\",\n\t\ttext:result.match(\/\"content1\": \"([^\"]+)\",\/)[1],\n\t\tinfo:result.match(\/ \"content2\": \"([^\"]*)\",\/)[1]\n\t\t})\n}\n\nif(\/网页链接\/.test(d)){\n\tlist = d.match(\/<br \\\/>[^<]+<a  href=\\\\\"[^\"]+\\\\\" data-hid\/g);\n\tl.push({\n\t\ttext:b.substring(0,10)+\"......\",\n\t\thref:c\n\t\t})\n\tfor(i in list){\n\tl.push({\n\t\ttext : list[i].match(\/>([^<]+)<a\/)[1],\n\t\thref:list[i].match(\/href=\\\\\"([^\"]+)\\\\\"\/)[1].replace(\/weibo.com\/,'m.weibo.cn')\n\t\t})\n\t  }\n\t}\n\t}else{\n\t\tl.push({text:b.substring(0,10)+\"......\",href:c})\n\t\t}\n\nif(edit_count>0){\n\tl.push({\n\t\ttext:\"编辑记录\",\n\thref:\"https:\/\/m.weibo.cn\/api\/container\/getIndex?title=%E7%BC%96%E8%BE%91%E8%AE%B0%E5%BD%95&containerid=231440_-_\"+baseUrl.match(\/(\\d+)\/)[1]\n\t\t})\n\t\n\t}\t\t\nif(\/profile_uid:\/.test(baseUrl)){\n\t l = [];\n\t let list = java.getElements(\"$.data.cards[*].card_group[*]\").toArray();\n\t list.forEach(x=>{\n\t \t     l.push({\n\t \t     \ttext: String(x.mblog.text).replace(\/<.*?>\/g,\"\").replace(\/#.*?#\/g,\"\"),\n\t \t     \thref:\"https:\/\/m.weibo.cn\/detail\/\"+x.mblog.id\n\t \t \n\t \t     \t})\n\t \t})\n                  \n\t}\n\nJSON.stringify(l)\t\t\n<\/js>\n$.[*]",
        "chapterName": "$.text",
        "chapterUrl": "$.href",
        "nextTocUrl": "@js:\nlet l = [];\nif(\/profile_uid:\/.test(baseUrl)){\nlet pages = Number(book.getVariable(\"pages\"));\nlet total = Math.ceil(Number(java.getString(\"$.data.cardlistInfo.total\"))\/10);\nif(total)\nbook.putVariable(\"total\", String(total));\ntotal = pages || 5;\njava.log(\"total:\"+total);\nif(!\/page=2\/.test(baseUrl)){\n\tfor(let i=2;i<=total;i++){\n   \tl.push(baseUrl.replace(\/page=\\d+\/,'page='+i))\n\t}\n}\n}\nl",
        "updateTime": "$.info"
    },
    "searchUrl": "@js:\nresult =\"https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=100103type%3D1%26q%3D{{key}}%26t%3D&page_type=searchall&page={{page}}\";\n\nif(\/^#.*?#$\/.test(key)){\n\t\/\/话题搜索\n\tkey = key.match(\/^#(.*?)#$\/)[1];\tresult=`https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=100103type%3D38%26q%3D${key}%26t%3D&page_type=searchall&page={{page}}`\n\t}\n\t\nif(\/^%.*?%$\/.test(key)){\n\t\/\/超话搜索\n\tkey = key.match(\/^%(.*?)%$\/)[1];\tresult=`https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=100103type%3D98%26q%3D${key}%26t%3D&page_type=searchall&page={{page}}`\n\t}\n\t\nif(\/^@.*?@$\/.test(key)){\n\t\/\/用户搜索\n\tkey = key.match(\/^@(.*?)@$\/)[1];\tresult=`https:\/\/m.weibo.cn\/api\/container\/getIndex?containerid=100103type%3D3%26q%3D${key}%26t%3D&page_type=searchall&page={{page}}`\n\t}",
    "weight": 0
}
广告