[{"bookSourceComment":"biquge.tw；本版针对正文为空：章节页走WebView，webJs返回正文文本，content使用<js>result<\/js>明确读取webJs返回值；保留CF登录认证入口。","bookSourceGroup":"GPT制作书源","bookSourceName":"笔趣阁biquge.tw","bookSourceType":0,"bookSourceUrl":"https:\/\/www.biquge.tw","customOrder":1,"enabled":true,"enabledCookieJar":true,"enabledExplore":true,"exploreUrl":"@js:\nvar p = parseInt('{{page}}') || 1;\nvar cats = [\n  ['全部','\/sort\/'],\n  ['玄幻','\/sort\/xuanhuan\/'],\n  ['武侠','\/sort\/wuxia\/'],\n  ['都市','\/sort\/dushi\/'],\n  ['历史','\/sort\/lishi\/'],\n  ['科幻','\/sort\/kehuan\/'],\n  ['游戏','\/sort\/youxi\/'],\n  ['其他','\/sort\/qita\/']\n];\nresult = JSON.stringify(cats.map(function(x){\n  var u = x[1] + (p > 1 ? p + '.html' : '');\n  return {\n    title: x[0],\n    url: u,\n    style: {layout_flexGrow:1, layout_flexBasisPercent:0.25}\n  };\n}));","header":"{\"User-Agent\": \"Mozilla\/5.0 (Linux; Android 13; Pixel 7) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/124.0.0.0 Mobile Safari\/537.36\", \"Accept\": \"text\/html,application\/xhtml+xml,application\/xml;q=0.9,image\/avif,image\/webp,*\/*;q=0.8\", \"Accept-Language\": \"zh-CN,zh;q=0.9\", \"Referer\": \"https:\/\/www.biquge.tw\/\"}","lastUpdateTime":"1779624773788","loginCheckJs":"try {\n  var html = String(result.body());\n  if (\/Just a moment|Cloudflare|cf-challenge|challenge-platform|请稍候|验证\/i.test(html)) {\n    java.log('biquge.tw：疑似仍在 Cloudflare 验证页，请到书源“登录”里点击“打开CF认证”。');\n  } else {\n    java.log('biquge.tw：未检测到明显 Cloudflare 验证页。');\n  }\n} catch (e) {\n  java.log('biquge.tw loginCheckJs: ' + e);\n}\nresult","loginUi":"@js:\nvar li = [\n  {'打开CF认证': 'cfAuth()'},\n  {'测试章节正文': 'cfTestChapter()'},\n  {'查看Cookie': 'cfShowCookie()'},\n  {'清除CF Cookie': 'cfClearCookie()'}\n];\nli.forEach(function(item){\n  var k = Object.keys(item)[0];\n  item.name = k;\n  item.type = 'button';\n  item.action = item[k];\n  item.style = {layout_flexGrow: 1, layout_flexBasisPercent: -1};\n  delete item[k];\n});\nJSON.stringify(li)","loginUrl":"function cfOpt() {\n  var ua = 'Mozilla\/5.0 (Linux; Android 13; Pixel 7) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/124.0.0.0 Mobile Safari\/537.36';\n  var opt = {\n    webView: true,\n    retry: 2,\n    headers: {\n      'User-Agent': ua,\n      'Referer': 'https:\/\/www.biquge.tw\/'\n    }\n  };\n  return JSON.stringify(opt);\n}\n\nfunction cfAuth() {\n  try {\n    var url = 'https:\/\/www.biquge.tw\/,' + cfOpt();\n    java.startBrowserAwait(url, 'biquge.tw CF认证', false);\n    var ck = String(java.getCookie('https:\/\/www.biquge.tw\/', null));\n    java.log('biquge.tw Cookie: ' + ck);\n    return true;\n  } catch (e) {\n    java.log('CF认证打开失败: ' + e);\n    return false;\n  }\n}\n\nfunction cfTestChapter() {\n  try {\n    var url = 'https:\/\/www.biquge.tw\/book\/9002\/286409.html,' + cfOpt();\n    java.startBrowserAwait(url, '测试章节正文', false);\n    var ck = String(java.getCookie('https:\/\/www.biquge.tw\/', null));\n    java.log('biquge.tw Cookie: ' + ck);\n    return true;\n  } catch (e) {\n    java.log('测试章节打开失败: ' + e);\n    return false;\n  }\n}\n\nfunction cfClearCookie() {\n  try {\n    cookie.removeCookie('https:\/\/www.biquge.tw');\n    cookie.removeCookie('https:\/\/www.biquge.tw\/');\n    java.log('已清除 biquge.tw Cookie，请重新点击“打开CF认证”。');\n    return true;\n  } catch (e) {\n    java.log('清除 Cookie 失败: ' + e);\n    return false;\n  }\n}\n\nfunction cfShowCookie() {\n  try {\n    var ck = String(java.getCookie('https:\/\/www.biquge.tw\/', null));\n    java.log('biquge.tw Cookie: ' + ck);\n    return true;\n  } catch (e) {\n    java.log('读取 Cookie 失败: ' + e);\n    return false;\n  }\n}","respondTime":180000,"ruleBookInfo":{"author":"@css:h2 > span > a@text","coverUrl":"@css:div.cover > img@src","intro":"@css:div.intro > p@text","kind":"@css:a[href*=sort]@text&&h2@text##作者：[^\\s]+\\s*","lastChapter":"@css:p:contains(最新章节) a@text","name":"@css:h1@text","tocUrl":"@css:a.chapterlist@href##$##,{\"webView\":true,\"headers\":{\"Referer\":\"https:\/\/www.biquge.tw\/\",\"User-Agent\":\"Mozilla\/5.0 (Linux; Android 13; Pixel 7) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/124.0.0.0 Mobile Safari\/537.36\"},\"retry\":2}","wordCount":"@css:h2@text##.*字数：([^\\s]+).*##$1"},"ruleContent":{"content":"<js>result<\/js>","title":"@css:h1@text##（\\d+\\s*\/\\s*\\d+）","webJs":"(function(){\n  function pick(){\n    var sels = ['#chaptercontent','#content','.chaptercontent','.chapter-content','.read-content','.read-content p','.content','article','main'];\n    for (var i=0;i<sels.length;i++){\n      var n=document.querySelector(sels[i]);\n      var t=n ? (n.innerText || n.textContent || '') : '';\n      t=String(t||'').replace(\/^\\s+|\\s+$\/g,'');\n      if(t.length>50) return t;\n    }\n    return '';\n  }\n  var s=pick();\n  if(!s && document.body){\n    s=String(document.body.innerText || document.body.textContent || '');\n  }\n  s=String(s||'');\n  if(\/Just a moment|Cloudflare|cf-browser-verification|cf-challenge|challenge-platform|Checking if the site connection is secure\/i.test(s)){\n    return '【WEBJS已执行】仍在Cloudflare验证页：请在书源登录里打开CF认证，认证后清除章节缓存。';\n  }\n  var titleNode=document.querySelector('h1');\n  var title=titleNode ? String(titleNode.innerText || titleNode.textContent || '') : '';\n  if(title){\n    var tp=s.indexOf(title);\n    if(tp>=0) s=s.substring(tp+title.length);\n  }\n  var p1=s.indexOf('上一章');\n  if(p1>=0){\n    var p2=s.indexOf('下一章',p1);\n    if(p2>=0) s=s.substring(p2+3);\n  }\n  var p3=s.indexOf('上一章');\n  if(p3>30) s=s.substring(0,p3);\n  s=s.replace(\/\\r\/g,'');\n  s=s.replace(\/\\n[ \\t\\u3000]+\/g,'\\n');\n  s=s.replace(\/[ \\t\\u3000]{2,}\/g,' ');\n  s=s.replace(\/^(\\s|目录|下一章|上一章)+\/g,'');\n  s=s.replace(\/请收藏本站[^\\n]*\/g,'');\n  s=s.replace(\/最新网址[^\\n]*\/g,'');\n  s=s.replace(\/手机用户请浏览[^\\n]*\/g,'');\n  s=s.replace(\/笔趣阁[^\\n]*最快更新[^\\n]*\/g,'');\n  s=s.replace(\/本章未完[^\\n]*\/g,'');\n  s=s.replace(\/本站所有小说[\\s\\S]*\/g,'');\n  s=s.replace(\/本站所有小說[\\s\\S]*\/g,'');\n  s=s.replace(\/Copyright[\\s\\S]*\/g,'');\n  s=s.replace(\/^\\s+|\\s+$\/g,'');\n  if(!s){\n    var html=document.documentElement ? String(document.documentElement.outerHTML||'') : '';\n    return '【WEBJS已执行但正文为空】页面标题=' + (document.title||'') + '\\nHTML长度=' + html.length + '\\nbody文本前300字=' + String((document.body && document.body.innerText)||'').substring(0,300);\n  }\n  return s;\n})()"},"ruleExplore":{"bookList":"@css:a[href~=^\/book\/[0-9]+\\.html$]:matchesOwn(.+),a[href~=^https?:\/\/(www\\.)?biquge\\.tw\/book\/[0-9]+\\.html$]:matchesOwn(.+)","bookUrl":"@href##$##,{\"webView\":true,\"headers\":{\"Referer\":\"https:\/\/www.biquge.tw\/\",\"User-Agent\":\"Mozilla\/5.0 (Linux; Android 13; Pixel 7) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/124.0.0.0 Mobile Safari\/537.36\"},\"retry\":2}","name":"@text"},"ruleSearch":{"bookList":"@css:a[href~=^\/book\/[0-9]+\\.html$]:matchesOwn(.+),a[href~=^https?:\/\/(www\\.)?biquge\\.tw\/book\/[0-9]+\\.html$]:matchesOwn(.+)","bookUrl":"@href##$##,{\"webView\":true,\"headers\":{\"Referer\":\"https:\/\/www.biquge.tw\/\",\"User-Agent\":\"Mozilla\/5.0 (Linux; Android 13; Pixel 7) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/124.0.0.0 Mobile Safari\/537.36\"},\"retry\":2}","checkKeyWord":"兽世","name":"@text"},"ruleToc":{"chapterList":"@css:div.booklist ul > li > a","chapterName":"@text","chapterUrl":"@href##$##,{\"webView\":true,\"headers\":{\"Referer\":\"https:\/\/www.biquge.tw\/\",\"User-Agent\":\"Mozilla\/5.0 (Linux; Android 13; Pixel 7) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/124.0.0.0 Mobile Safari\/537.36\"},\"retry\":2}"},"searchUrl":"\/search\/?page={{page}}&search={{key}}&searchkey={{key}}&sort=default","weight":0}]