📖微博
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‎\\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‎\\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
}