diff --git a/QuantumultX/filter/filter.list b/QuantumultX/filter/filter.list index cd4122dd..2d190999 100644 --- a/QuantumultX/filter/filter.list +++ b/QuantumultX/filter/filter.list @@ -5,7 +5,7 @@ #!icon=https://raw.githubusercontent.com/fmz200/wool_scripts/main/icons/gif/naisi-01.gif #!raw-url=https://github.com/fmz200/wool_scripts/raw/main/QuantumultX/filter/filter.list #!tg-group=https://t.me/lanjieguanggao -#!date=2025-07-14 22:20:17 +#!date=2025-07-19 12:00:00 #!support=约9760行 ############################################# # "reject" 策略返回 HTTP 状态码 404,不附带任何额外内容 @@ -350,13 +350,12 @@ host, lc.map.baidu.com, reject IP-CIDR, 180.76.76.200/32, reject # > 哔哩哔哩 -;HOST, mall.bilibili.com, REJECT -;HOST, passport.bilibili.com, REJECT -host-keyword, api.sobot.com, reject -host-suffix, cm.ad.bilibili.com, reject -host-suffix, cm.adcommon.bilibili.com, reject -host-suffix, cm.game.bilibili.com, reject -host-suffix, cm.track.biligame.bilibili.com, reject +host, app.biliapi.net, reject +host, api.biliapi.net, reject +host, app.biliapi.com, reject +host, api.biliapi.com, reject +host, line3-h5-mobile-api.biligame.com, reject +host-suffix, chat.bilibili.com, reject # > 百词斩 host, advertise.baicizhan.com, reject diff --git a/QuantumultX/rewrite/rewrite.snippet b/QuantumultX/rewrite/rewrite.snippet index e27631b5..c9afd4bb 100644 --- a/QuantumultX/rewrite/rewrite.snippet +++ b/QuantumultX/rewrite/rewrite.snippet @@ -10,7 +10,7 @@ #!system = iOS, iPadOS #!system_version = #!loon_version = -#!date=2025-07-17 20:00:00 +#!date=2025-07-19 12:00:00 #!remark=下方的所有规则都标注了对应的hostname,可能存在错误或者遗漏,欢迎反馈。对于无法/可选MITM的hostname都特别做了“如开启可自行添加主机名”提示,如果提示后面没有标注主机名则包含所有主机名,否则只包含提示语后面的主机名。 ############################################# # "reject" 策略返回 HTTP 状态码 404,不附带任何额外内容 @@ -353,27 +353,47 @@ # > 哔哩哔哩 # hostname = app.bilibili.com, api.bilibili.com, api.live.bilibili.com, grpc.biliapi.net -^https:\/\/api\.live\.bilibili\.com\/xlive\/e-commerce-interface\/v1\/ecommerce-user\/get_shopping_info\? url reject-dict -#^https:\/\/ap[ip]\.bilibili\.com\/x\/(?:resource\/(?:top\/activity|patch\/tab)|v2\/search\/square|vip\/ads\/materials)\? mock-response-body data-type=text status-code=200 data="{"code":-404,"message":"-404","ttl":1,"data":null}" -#^https:\/\/api\.bilibili\.com\/pgc\/activity\/deliver\/material\/receive\? mock-response-body data-type=text status-code=200 data="{"code":0,"data":{"closeType":"close_win","container":[],"showTime":""},"message":"success"}" -#^https:\/\/(?:grpc\.biliapi\.net|app\.bilibili\.com)\/bilibili\.app\.interface\.v1\.Teenagers\/ModeStatus$ mock-response-body data-type=base64 data="AAAAABMKEQgCEgl0ZWVuYWdlcnMgAioA" mock-data-is-base64=true -#^https:\/\/(?:grpc\.biliapi\.net|app\.bilibili\.com)\/bilibili\.app\.interface\.v1\.Search\/DefaultWords$ mock-response-body data-type=base64 data="AAAAACkaHeaQnOe0ouinhumikeOAgeeVquWJp+aIlnVw5Li7IgAoAToAQgBKAA==" mock-data-is-base64=true -#^https:\/\/(?:grpc\.biliapi\.net|app\.bilibili\.com)\/bilibili\.app\.view\.v1\.View\/TFInfo$ mock-response-body data-type=base64 data="AAAAAAIIAQ==" mock-data-is-base64=true +^http:\/\/[\d\.]+:8000\/v1\/resource\/\w{32}-1-SPLASH url reject-dict +^http:\/\/upos-sz-static\.bilivideo\.com\/ssaxcode\/\w{2}\/\w{2}\/\w{32}-1-SPLASH url reject-dict +# 屏蔽默认搜索框关键词 +^https:\/\/(?:app\.bilibili\.com|grpc\.biliapi\.net)\/bilibili\.app\.interface\.v1\.Search\/DefaultWords url reject-dict +# 视频左下角流量卡推荐 +^https:\/\/(?:grpc\.biliapi\.net|app\.bilibili\.com)\/bilibili\.app\.view\.v1\.View\/TFInfo$ url reject-dict +# 青少年模式(不支持 +#^https:\/\/(?:grpc\.biliapi\.net|app\.bilibili\.com)\/bilibili\.app\.interface\.v1\.Teenagers\/ModeStatus$ url script-analyze-echo-response https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-echo.js?token=209863 -^https:\/\/api\.bilibili\.com\/pgc\/view\/v2\/app\/season\? url jsonjq-response-body 'del(.data.payment)' -^https:\/\/api\.bilibili\.com\/pgc\/page\/(?:bangumi|cinema\/tab)\? url jsonjq-response-body '.result.modules |= if . then map(if (.style | startswith("tip")) or (.module_id | IN(241, 1283, 1441, 1284)) then .items = [] elif .style | startswith("banner") then .items |= if . then map(select(.link | contains("play"))) else [] end elif .style | startswith("function") then .items |= if . then map(select(.blink | startswith("bilibili"))) else [] end end) end' -^https:\/\/api\.live\.bilibili\.com\/xlive\/(?:app-interface\/v2\/index\/feed|app-room\/v1\/index\/getInfoBy(?:Room|User))\? url jsonjq-response-body '.data |= (del(.play_together_info, .play_together_info_v2, .activity_banner_info) | if .function_card then .function_card[] = null end | if .new_tab_info.outer_list then .new_tab_info.outer_list |= map(select(.biz_id != 33)) end | if .card_list then .card_list |= map(select(.card_type | IN("banner_v2", "activity_card_v1") | not)) end | reduce ([["show_reserve_status"], false], [["reserve_info", "show_reserve_status"], false], [["shopping_info", "is_show"], 0]) as [$path, $value] (.; if getpath($path) then setpath($path; $value) end))' +# 开屏广告 +^https:\/\/app\.bilibili\.com\/x\/v2\/splash\/list url script-response-body https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-ad.js?token=209863 +^https:\/\/app\.bilibili\.com\/x\/v2\/splash\/show url script-response-body https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-ad.js?token=209863 +# 首页视频信息流 +^https:\/\/app\.bilibili\.com\/x\/v2\/feed\/index\? url script-response-body https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-ad.js?token=209863 +# 首页顶部右边图标、导航栏列表、底部tab栏目 +^https:\/\/app\.bilibili\.com\/x\/resource\/show\/tab\/v2 url script-response-body https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-ad.js?token=209863 +# 搜索页推荐 +^https:\/\/app\.bilibili\.com\/x\/v2\/search\/square url script-response-body https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-ad.js?token=209863 +# 首页右上角活动小图标 +^https:\/\/app\.bilibili\.com\/x\/resource\/top\/activity\? url script-response-body https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-ad.js?token=209863 +# 我的页面简化 +^https:\/\/app\.bilibili\.com\/x\/v2\/account\/mine url script-response-body https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-ad.js?token=209863 +# 直播相关净化 +^https:\/\/api\.live\.bilibili\.com\/xlive\/(?:app-interface\/v2\/index\/feed|app-room\/v1\/index\/getInfoBy(?:Room|User))\? url script-response-body https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-ad.js?token=209863 +# 直播tab页面在选择标签后的banner +^https:\/\/api\.live\.bilibili\.com\/xlive\/app-interface\/v2\/second\/getList url script-response-body https://klraw.pages.dev/kelv1n1n/script/refs/heads/main/js/bilibili-ad.js?token=209863 -#^https:\/\/app\.bilibili\.com\/x\/resource\/show\/skin\? response-body-json-del data.common_equip -#^https:\/\/app\.bilibili\.com\/x\/resource\/show\/tab\/v2\? url jsonjq-response-body jq-path="https://raw.githubusercontent.com/kokoryh/Sparkle/refs/heads/master/jq/bilibili.tab.jq" -^https:\/\/app\.bilibili\.com\/x\/v2\/splash\/(?:list|show|event\/list2)\? url jsonjq-response-body '.data |= with_entries(if .key | IN("show", "event_list") then .value = [] else . end)' -^https:\/\/app\.bilibili\.com\/x\/v2\/feed\/index\? url jsonjq-response-body 'if .data.items then .data.items |= map(select((.banner_item == null) and (.ad_info == null) and (.card_goto == "av") and (.card_type | IN("small_cover_v2", "large_cover_single_v9", "large_cover_v1")))) end' -^https:\/\/app\.bilibili\.com\/x\/v2\/feed\/index\/story\? url jsonjq-response-body 'if .data.items then .data.items |= map(select((.ad_info == null) and (.card_goto | startswith("ad") | not)) | del(.story_cart_icon, .free_flow_toast)) end' -#^https:\/\/app\.bilibili\.com\/x\/v2\/account\/mine(?:\/ipad)?\? url jsonjq-response-body jq-path="https://raw.githubusercontent.com/kokoryh/Sparkle/refs/heads/master/jq/bilibili.mine.jq" -^https:\/\/app\.bilibili\.com\/x\/v2\/account\/myinfo\? url jsonjq-response-body '.data.vip |= if . != null and .status == 0 then . + { status: 1, type: 2, due_date: 9005270400000, role: 15 } else . end' +# 移除热门话题 +#^https:\/\/(?:app\.bilibili\.com|grpc\.biliapi\.net)\/bilibili\.app\.show\.v1\.Popular\/Index$ url script-response-body https://raw.githubusercontent.com/kokoryh/Sparkle/master/dist/bilibili.protobuf.js +# 视频播放详情页广告 +#^https:\/\/(?:app\.bilibili\.com|grpc\.biliapi\.net)\/bilibili\.app\.viewunite\.v1\.View\/(?:RelatesFeed|View|ViewProgress)$ url script-response-body https://raw.githubusercontent.com/kokoryh/Sparkle/master/dist/bilibili.protobuf.js +# 动态页广告 +#^https:\/\/(?:app\.bilibili\.com|grpc\.biliapi\.net)\/bilibili\.app\.dynamic\.v2\.Dynamic\/DynAll$ url script-response-body https://raw.githubusercontent.com/kokoryh/Sparkle/master/dist/bilibili.protobuf.js +# 搜索结果信息流广告 +#^https:\/\/(?:app\.bilibili\.com|grpc\.biliapi\.net)\/bilibili\.polymer\.app\.search\.v1\.Search\/SearchAll$ url script-response-body https://raw.githubusercontent.com/kokoryh/Sparkle/master/dist/bilibili.protobuf.js +# 交互式弹幕 +#^https:\/\/(app\.bilibili\.com|grpc\.biliapi\.net)\/bilibili\.community\.service\.dm\.v1\.DM\/DmView url script-response-body https://raw.githubusercontent.com/kokoryh/Sparkle/master/dist/bilibili.protobuf.js +# 评论区广告 +#^https:\/\/(app\.bilibili\.com|grpc\.biliapi\.net)\/bilibili\.main\.community\.reply\.v1\.Reply\/MainList url script-response-body https://raw.githubusercontent.com/kokoryh/Sparkle/master/dist/bilibili.protobuf.js -^https:\/\/(grpc\.biliapi\.net|app\.bilibili\.com)\/bilibili\.community\.service\.dm\.v1\.DM\/DmSegMobile$ url script-request-body https://raw.githubusercontent.com/kokoryh/Sparkle/refs/heads/master/dist/bilibili.protobuf.request.js -^https:\/\/(grpc\.biliapi\.net|app\.bilibili\.com)\/bilibili\.(app\.(show\.v1\.Popular\/Index|dynamic\.v2\.Dynamic\/DynAll|view(unite)?\.v1\.View\/(View|ViewProgress|RelatesFeed)|playurl\.v1\.PlayURL\/PlayView|playerunite\.v1\.Player\/PlayViewUnite)|polymer\.app\.search\.v1\.Search\/SearchAll|community\.service\.dm\.v1\.DM\/DmView|main\.community\.reply\.v1\.Reply\/MainList|pgc\.gateway\.player\.v2\.PlayURL\/PlayView)$ url script-response-body https://raw.githubusercontent.com/kokoryh/Sparkle/refs/heads/master/dist/bilibili.protobuf.response.js +^https:\/\/(grpc\.biliapi\.net|app\.bilibili\.com)\/bilibili\.(app\.(show\.v1\.Popular\/Index|dynamic\.v2\.Dynamic\/DynAll|view(unite)?\.v1\.View\/(View|ViewProgress|RelatesFeed)|playurl\.v1\.PlayURL\/PlayView|playerunite\.v1\.Player\/PlayViewUnite)|polymer\.app\.search\.v1\.Search\/SearchAll|community\.service\.dm\.v1\.DM\/(DmView|DmSegMobile)|main\.community\.reply\.v1\.Reply\/MainList|pgc\.gateway\.player\.v2\.PlayURL\/PlayView)$ url script-response-body https://raw.githubusercontent.com/kokoryh/Sparkle/1763a9f1fb7a570895de966393edb08dabc5f585/dist/bilibili.protobuf.js # > 哔哩哔哩漫画 # hostname = manga.bilibili.com, i*.hdslb.com