diff --git a/Images/MuTu.PNG b/Images/MuTu.PNG deleted file mode 100644 index 2457fbc1..00000000 Binary files a/Images/MuTu.PNG and /dev/null differ diff --git a/Images/dulong.png b/Images/dulong.png deleted file mode 100644 index ffe615ad..00000000 Binary files a/Images/dulong.png and /dev/null differ diff --git a/QuantumultX/Cookie.conf b/QuantumultX/Cookie.conf deleted file mode 100644 index 8b92723b..00000000 --- a/QuantumultX/Cookie.conf +++ /dev/null @@ -1,99 +0,0 @@ -# > Cookie获取 - -# 分割线—————————————————————————— - -# 京东商城 登录 https://bean.m.jd.com -https:\/\/api\.m\.jd\.com\/client\.action.*functionId=signBean url script-request-header https://raw.githubusercontent.com/NobyDa/Script/master/JD-DailyBonus/JD_DailyBonus.js - -# 网易云音乐 -#登录1 https://music.163.com/m/login -#登陆2 https://music.163.com/#/user/level -^https:\/\/music.163.com\/weapi\/user\/level url script-request-body https://raw.githubusercontent.com/chavyleung/scripts/master/neteasemusic/quanx/neteasemusic.cookie.js - -# 人人字幕组 app与网页http://www.rrys2020.com -^https?:\/\/(www\.)?rrys2020\.com\/?.? url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/zimuzu/zimuzu.cookie.js -^http:\/\/ios.zmzapi.com\/index.php.*a=(mobile_)?login url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/zimuzu/zimuzu.cookie.js - -# 喜马拉雅 app获取 -^https?:\/\/.*\/mobile\-user\/homePage\/.* url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/ximalaya/ximalaya.cookie.js - -# 人人视频 app获取 -^https:\/\/api\.rr\.tv\/user\/profile url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/rrtv/rrtv.cookie.js - -# 饿了么 app获取 -^https:\/\/h5\.ele\.me\/restapi\/eus\/v\d\/current_user$ url script-request-header https://raw.githubusercontent.com/songyangzz/QuantumultX/master/elem/elemGetCookies.js - -# 中国电信套餐 天翼账号中心app获取 -^https?:\/\/e\.189\.cn\/store\/user\/package_detail\.do url script-request-header https://raw.githubusercontent.com/Sunert/Scripts/master/Task/telecomInfinity.js - -# 美团 app获取 -^https:\/\/i.meituan.com\/evolve\/signin\/signpost\/ url script-request-body https://raw.githubusercontent.com/chavyleung/scripts/master/meituan/meituan.cookie.js - -# 京东到家 京东app-京东到家栏目获取 -https:\/\/daojia\.jd\.com\/client\?_jdrandom=\d{13}&functionId=%2Fsignin url script-request-header https://raw.githubusercontent.com/Sunert/Scripts/master/Task/jddj.js - -# 新浪微博 app获取 -https:\/\/api\.weibo\.cn\/\d\/video\/machine\?gsid url script-request-header https://raw.githubusercontent.com/Sunert/Scripts/master/Task/weibo.js -# 微博钱包 钱包获取 -https:\/\/pay\.sc\.weibo\.com\/aj\/mobile\/home\/welfare\/signin\/do\? url script-request-header https://raw.githubusercontent.com/Sunert/Scripts/master/Task/weibo.js - -# 顺丰速运 app获取 -^https:\/\/sf-integral-sign-in.weixinjia.net\/app\/index url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/sfexpress/sfexpress.cookie.js -^https:\/\/mcs-mimp-web.sf-express.com\/mcs-mimp\/share\/(.*?)Redirect url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/sfexpress/sfexpress.cookie.js - -# 苏宁易购 app获取 -^https:\/\/passport.suning.com\/ids\/login$ url script-request-body https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.cookie.js -^https:\/\/luckman.suning.com\/luck-web\/sign\/api\/clock_sign.do url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.cookie.js -^https:\/\/sign.suning.com\/sign-web\/m\/promotion\/sign\/doSign.do url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.cookie.js -^https:\/\/gameapi.suning.com\/sngame-web\/(api\/signin\/private\/customerSignOperation.do|gateway\/api\/queryPrize.do) url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.cookie.js - -# 金山WPS app获取 -^https:\/\/zt.wps.cn\/2018\/docer_check_in\/api\/act_list url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/wps/wps.cookie.js -^https:\/\/zt.wps.cn\/2018\/clock_in\/api\/sign_up url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/wps/wps.cookie.js - -# Dler Cloud机场 登陆https://dleris.best/ -^https:\/\/dleris\.best\/user url script-request-header https://raw.githubusercontent.com/githubdulong/Script/master/dlercloud.js - -# 吾爱破解 登陆https://www.52pojie.cn -https:\/\/www\.52pojie\.cn\/home\.php\? url script-request-header https://raw.githubusercontent.com/NobyDa/Script/master/52pojie-DailyBonus/52pojie.js - -# 网易新闻 app获取 -^https:\/\/(.*?)c\.m\.163\.com\/uc\/api\/sign\/v3\/commit url script-request-body https://raw.githubusercontent.com/chavyleung/scripts/master/neteasenews/neteasenews.cookie.js - -# 去哪儿 app获取 -^https:\/\/user.qunar.com\/webapi\/member\/signIndexV2.htm url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/qunar/qunar.cookie.js - -# 滴滴出行 app获取 -^https:\/\/as\.xiaojukeji\.com\/ep\/as\/toggles\? url script-request-header https://raw.githubusercontent.com/zZPiglet/Task/master/DiDi/DiDi.js - -# 百度贴吧 登陆https://tieba.baidu.com -^https?:\/\/tieba\.baidu\.com\/?.? url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/tieba/tieba.cookie.js - -# 哔哩哔哩 登录: https://www.bilibili.com -^https:\/\/(www|live)\.bilibili\.com\/?.? url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/bilibili/bilibili.cookie.js - -# 115网盘 app获取 -^https?:\/\/proapi\.115\.com\/ios\/user\/takespc\? url script-request-header https://raw.githubusercontent.com/zZPiglet/Task/master/115/115.js - -# 中国移动 余量box设置 -^https:\/\/clientaccess.10086.cn\/biz-orange\/LN\/uamrandcodelogin\/autoLogin url script-request-body https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.fee.cookie.js -^https:\/\/clientaccess.10086.cn\/biz-orange\/BN\/realFeeQuery\/getRealFee url script-request-body https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.fee.cookie.js - -# 中国电信 box设置 -^https:\/\/wapside.189.cn:9001\/api\/home\/sign url script-request-body https://raw.githubusercontent.com/chavyleung/scripts/master/10000/10000.cookie.js - -# 中国移动 app获取 -^http:\/\/wx.10086.cn\/website\/taskCenter\/index\? url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.cookie.js -^http:\/\/wx.10086.cn\/website\/taskCenter\/sign\? url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.cookie.js - -# 万达电影 app获取 -^https:\/\/user-api-prd-mx\.wandafilm\.com url script-request-header https://raw.githubusercontent.com/chavyleung/scripts/master/wanda/wanda.cookie.js - -# 欧可林商城 小程序获取 -^https:\/\/mall\.oclean\.com\/API\/VshopProcess\.ashx\?action=TaskHome&clientType=5&client=5&openId= url script-request-header https://raw.githubusercontent.com/zZPiglet/Task/master/Oclean/Oclean_mini.js - -# 分割线—————————————————————————— - -# > Hostname主机名 -hostname = api.m.jd.com, music.163.com, *.rrys2020.com, ios.zmzapi.com, mobwsa.ximalaya.com, *.rr.tv, h5.ele.me, e.189.cn, i.meituan.com, daojia.jd.com, api.weibo.cn, pay.sc.weibo.com, sf-integral-sign-in.weixinjia.net, mcs-mimp-web.sf-express.com, passport.suning.com, luckman.suning.com, sign.suning.com, gameapi.suning.com, draw.jdfcloud.com, zt.wps.cn, dleris.best, www.52pojie.cn, *.m.163.com, user.qunar.com, as.xiaojukeji.com, tieba.baidu.com, *.bilibili.com, proapi.115.com, clientaccess.10086.cn, wapside.189.cn, wx.10086.cn, user-api-prd-mx.wandafilm.com, mall.oclean.com - diff --git a/QuantumultX/JavaScript.conf b/QuantumultX/JavaScript.conf deleted file mode 100644 index 8dcc6c81..00000000 --- a/QuantumultX/JavaScript.conf +++ /dev/null @@ -1,127 +0,0 @@ -# 【JavaScript】合集 - -# 分割线—————————————————————————— - -# TikTok国际抖音解锁封区(更换307后面JP JP=日本 KR=韩国 HK=香港 US=美国) -(?<=_region=)CN(?=&) url 307 JP -# 港区 -(?<=\?version_code=)16..(?=.?.?&) url 307 1 -# 美区 -//(?<=&app_version=)16..(?=.?.?&) url 307 1 - -# 去微博应用内广告 -^https?://(sdk|wb)app\.uve\.weibo\.com(/interface/sdk/sdkad.php|/wbapplua/wbpullad.lua) url script-response-body https://raw.githubusercontent.com/yichahucha/surge/master/wb_launch.js -^https?://m?api\.weibo\.c(n|om)/2/(statuses/(unread|extend|positives/get|(friends|video)(/|_)(mix)?timeline)|stories/(video_stream|home_list)|(groups|fangle)/timeline|profile/statuses|comments/build_comments|photo/recommend_list|service/picfeed|searchall|cardlist|page|!/photos/pic_recommend_status|video/tiny_stream_video_list) url script-response-body https://raw.githubusercontent.com/yichahucha/surge/master/wb_ad.js - -# 微信公众号广告 -^https?:\/\/mp\.weixin\.qq\.com\/mp\/getappmsgad url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/QuantumultX/File/Wechat.js - -# 微信朋友圈广告 -//^https:\/\/mp\.weixin\.qq\.com\/mp\/(getappmsgext|getappmsgad) url script-response-body https://raw.githubusercontent.com/iepngs/Script/master/weixin/ad.js - -# 小小影视TF -#会员 -https:\/\/.*.xiaoxiao(img|apps|appxs).com url request-header (\r\n)Cookie:.+(\r\n) request-header $1Cookie: xxx_api_auth=6131333537653261363463323331666265663763396239663835636662373930$2 -#去广告 -https:\/\/.*\/getGlobalData url script-response-body https://raw.githubusercontent.com/Alex0510/Eric/master/surge/Script/xxysad.js - -# 网易蜗牛读书VIP -//^https?://p\.du\.163\.com/readtime/info.json url reject -//^https?:\/\/p\.du\.163\.com\/gain\/readtime\/info\.json url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/QuantumultX/File/wnyd.js - -# VSCO滤镜VIP -//^https?:\/\/vsco\.co\/api\/subscriptions\/2.1\/user-subscriptions\/ url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/QuantumultX/File/vsco.js - -# 香蕉视频VIP -^https?:\/\/.*\.(fuli|xiang(jiao|xiang))apps\.com\/(ucp\/index|getGlobalData|.+\/reqplay\/) url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/QuantumultX/File/xjsp.js - -# 金山WPS -^https://account.wps.*/api/users/ url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Wps.js - -# Gyroscope 解锁 pro -//^https:\/\/api\.gyrosco\.pe\/v1\/account\/$ url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/gyroscope.js - -# 大千视界 解锁 -^https:\/\/api\.mvmtv\.com\/index\.php.*(c=user.*a=info|a=addr.*vid=.*) url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/dqsj.js - -# 彩云天气 Vip -//^https:\/\/biz\.caiyunapp\.com\/v2\/user\?app_name\=weather url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/QuantumultX/File/ColorWeather.js -^https://biz.caiyunapp.com/(v2\/user|membership_rights) url script-response-body https://raw.githubusercontent.com/LeeeMooo/ScriptOwn/master/myQx/js/caiyun.js - -# 扫描全能王 pro -^https:\/\/(api|api-cs)\.intsig\.net\/purchase\/cs\/query_property\? url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/CamScanner.js - -# 哔哩哔哩 精简去广告 -^https:\/\/app\.bilibili\.com\/(search\/resource|x\/(resource\/show\/tab|v2\/(view|rank|feed|reply\/main|account\/mine))) url script-response-body https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/Bilibili.js - -# vsco -//^https?:\/\/vsco\.co\/api\/subscriptions\/2.1\/user-subscriptions\/ url script-response-body https://raw.githubusercontent.com/langkhach270389/Scripting/master/vsco.js - -# gyroscope -//^https:\/\/api\.gyrosco\.pe\/v1\/account\/$ url script-response-body https://raw.githubusercontent.com/langkhach270389/Scripting/master/Gyroscope.vip.js - -# Pdfexpert -^https:\/\/license\.pdfexpert\.com\/api\/1\.0\/pdfexpert6\/subscription\/(refresh$|check$) url script-response-body https://raw.githubusercontent.com/langkhach270389/Scripting/master/Pdfexpert.vip.js - -# workingcopy -^https:\/\/education\.github\.com\/api\/user$ url script-response-body https://raw.githubusercontent.com/langkhach270389/Scripting/master/workingcopy.js - -# pre_dayone -//^https:\/\/dayone\.me\/api\/users$ url request-header (\r\n)If-None-Match:.+(\r\n) request-header $1 -# dayone -^https:\/\/dayone\.me\/api\/(users|v2\/users\/account-status)$ url script-response-body https://raw.githubusercontent.com/langkhach270389/Scripting/master/dayone.js - -# Bear熊掌记 内购解锁 -//^https:\/\/buy\.itunes\.apple\.com\/verifyReceipt url script-response-body https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/bear.js - -# 人人视频 去广告 -^https:\/\/api\.rr\.tv(\/user\/privilege\/list|\/ad\/getAll|\/rrtv-video\/v4plus\/season\/detail) url script-response-body https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/rrtv.js - -# 人人字幕组(商店版) 去广告 -^http://ctrl.playcvn.com/app/(init|ads) url script-response-body https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/YYeTs.js - -# YouTube 去广告 -^https?:\/\/.+\.googlevideo\.com\/.+&oad url reject-img -^https?:\/\/.+\.googlevideo\.com\/.+ctier url reject-img -^https?:\/\/youtubei\.googleapis\.com\/youtubei\/.+ad_ url reject-img -^https?:\/\/youtubei\.googleapis\.com\/youtubei\/.+log_ url reject-img -^https?:\/\/.+\.youtube\.com\/get_midroll_ url reject-img -^https?:\/\/premiumyva\.appspot\.com\/vmclickstoadvertisersite url reject-img -^https?:\/\/.+\.youtube\.com\/api\/stats\/ads url reject-img -^https?:\/\/.+\.youtube\.com\/api\/stats\/.+adformat url reject-img -^https?:\/\/.+\.youtube\.com\/pagead\/ url reject-img -^https?:\/\/.+\.youtube\.com\/ptracking url reject-img - -# Fantastical 内购解锁 -^https:\/\/api\.flexibits\.com\/v1\/(auth|account)\/(device|details|appstore-receipt)\/$ url script-response-body https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/fantastical.js - -# Pear 雪梨 -^https:\/\/(www\.baidu.com2\.club|ayk\.tmdidi\.com|m\.pearkin\.com|souhu\.mett\.me|bkcd\.b-cdn\.net)\/(api\/movie\/WatchMovie|api\/Account\/CheckVip|api\/account\/IndexDetail) url script-response-body Js/pear.js - -# 有道云笔记VIP -//https://note.youdao.com/yws/(mapi/payment|api/self) url script-response-body https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/ydybj.js - -# 闪电下载vip -^http\:\/\/app\.flashdown365\.com\/ios\/login url script-response-body https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/sdxz.js - -# 京东历史比价 -^https?://api\.m\.jd\.com/client\.action\?functionId=(wareBusiness|serverConfig) url script-response-body https://raw.githubusercontent.com/yichahucha/surge/master/jd_price.js - -# 淘宝历史比价 -^http://.+/amdc/mobileDispatch url script-request-body https://raw.githubusercontent.com/yichahucha/surge/master/tb_price.js -^https?://trade-acs\.m\.taobao\.com/gw/mtop\.taobao\.detail\.getdetail url script-response-body https://raw.githubusercontent.com/yichahucha/surge/master/tb_price.js - -# 脚本转换 -//^https?:\/\/(raw|gist)\.githubusercontent.com/.*\.js$ url script-response-body https://raw.githubusercontent.com/Peng-YM/ScriptConverter/master/js-converter.js - -# Netflix获取评分 -//^https?://ios\.prod\.ftl\.netflix\.com/iosui/user/.+path=%5B%22videos%22%2C%\d+%22%2C%22summary%22%5D url script-request-header https://raw.githubusercontent.com/yichahucha/surge/master/nf_rating.js -//^https?://ios\.prod\.ftl\.netflix\.com/iosui/user/.+path=%5B%22videos%22%2C%\d+%22%2C%22summary%22%5D url script-response-body https://raw.githubusercontent.com/yichahucha/surge/master/nf_rating.js - -# 彩云天气 定位 -https://weather-data.apple.com url script-request-header https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/caiyun.js - -# 分割线—————————————————————————— - -# > Hostname主机名 -hostname = mp.weixin.qq.com, *.googlevideo.com, api.m.jd.com, trade-acs.m.taobao.com, education.github.com, api.rr.tv, account.wps.cn, ap*.intsig.net, dayone.me, license.pdfexpert.com, app.flashdown365.com, api.flexibits.com, api.gyrosco.pe, ios.prod.ftl.netflix.com, biz.caiyunapp.com, *.musical.ly, *.tiktokv.com, *.byteoversea.com, *.snssdk.com, api.weibo.cn, mapi.weibo.com, *.uve.weibo.com, , *.xiaoxiao*.com, ios.fuliapps.com, apple.fuliapps.com, ios.xiangjiaoapps.com, apple.xiangjiaoapps.com, *.xiangxiangapps.com, *.lagoapps.com, bkcd.b-cdn.net, souhu.mett.me, ayk.tmdidi.com, m.pearkin.com, www.baidu.com2.club, api.meiyan.com, raw.githubusercontent.com, gist.githubusercontent.com, note.youdao.com, p.du.163.com, app.bilibili.com, api.rr.tv, ctrl.playcvn.com, weather-data.apple.com diff --git a/QuantumultX/Q-Search_All_in_one.conf b/QuantumultX/Q-Search_All_in_one.conf deleted file mode 100644 index 7adadd71..00000000 --- a/QuantumultX/Q-Search_All_in_one.conf +++ /dev/null @@ -1,112 +0,0 @@ -# > Q-Search - -# 分割线—————————————————————————— - -# - Safari 内输入 命令 + 空格 + 关键词 快速指定搜索引擎搜索 -# 注:先进入设置更改 Safari 默认搜索为 DuckDuckGO -# 可自行修改指令或者添加搜索引擎 - -# gh:GitHub 搜索 -# gm:Google 图片搜索 -# sof: Stack Overflow -# se: StackExchange - -# yd:有道词典搜索 -# trc: Google 译至中 -# tre: Google 译至英 -# trj: Google 译至日 - -# db:豆瓣搜索 -# zh: 知乎 -# wb: 微博 -# wx: 微信 -# rd: Reddit -# zdm: 什么值得买 -# amz: 亚马逊 -# jd: 京东 -# tb: 淘宝 -# tm: 天猫 - -# ytb: YouTube -# ph: PornHub -# gd: Google Drive资源 -# tgd: TG搜索Google Drive资源 - -# bi: 必应 -# bd:百度搜索 -# ddg:DuckDuckGo 搜索 -# 无指令则转 Google 搜索 - -# 分割线—————————————————————————— -# 图片 -#gm (Google图片) -^https:\/\/duckduckgo.com\/\?q=gm\+([^&]+).+ url 302 https://www.google.com/search?&tbm=isch&q=$1 -# gh (GitHub) -^https:\/\/duckduckgo.com\/\?q=gh\+([^&]+).+ url 302 https://github.com/search?q=$1 -# sof (Stack Overflow) -^https:\/\/duckduckgo.com\/\?q=sof\+([^&]+).+ url 302 https://stackoverflow.com/search?q=$1 -# se (StackExchange) -^https:\/\/duckduckgo.com\/\?q=se\+([^&]+).+ url 302 https://stackexchange.com/search?q=$1 -# wa (WolframAlpha) -^https:\/\/duckduckgo.com\/\?q=wa\+([^&]+).+ url 302 https://www.wolframalpha.com/input/?i=$1 - -# 翻译 -# yd (有道) -^https:\/\/duckduckgo.com\/\?q=yd\+([^&]+).+ url 302 http://dict.youdao.com/search?q=$1 -# trc (Google 译至中) -^https:\/\/duckduckgo.com\/\?q=trc\+([^&]+).+ url 302 https://translate.google.com/#view=home&op=translate&sl=auto&tl=zh-CN&text=$1 -# tre (Google 译至英) -^https:\/\/duckduckgo.com\/\?q=tre\+([^&]+).+ url 302 https://translate.google.com/#view=home&op=translate&sl=auto&tl=en&text=$1 -# trj (Google 译至日) -^https:\/\/duckduckgo.com\/\?q=trj\+([^&]+).+ url 302 https://translate.google.com/#view=home&op=translate&sl=auto&tl=ja&text=$1 - -# 社区 -# db:豆瓣 -^https:\/\/duckduckgo.com\/\?q=db\+([^&]+).+ url 302 https://m.douban.com/search/?query=$1 -# zh: 知乎 -^https:\/\/duckduckgo.com\/\?q=zh\+([^&]+).+ url 302 https://www.zhihu.com/search?type=content&q=$1 -# wb: 微博 -^https:\/\/duckduckgo.com\/\?q=wb\+([^&]+).+ url 302 https://s.weibo.com/weibo/$1 -# wx: 微信 -^https:\/\/duckduckgo.com\/\?q=wx\+([^&]+).+ url 302 https://weixin.sogou.com/weixinwap?query=$1 -# rd (Reddit) -^https:\/\/duckduckgo.com\/\?q=rd\+([^&]+).+ url 302 https://www.reddit.com/search?q=$1 -# tw (Twitter) -^https:\/\/duckduckgo.com\/\?q=tw\+([^&]+).+ url 302 https://twitter.com/search?q=$1 - -# > 购物 -# zdm: 什么值得买 -^https:\/\/duckduckgo.com\/\?q=zdm\+([^&]+).+ url 302 https://search.m.smzdm.com/?v=b&s=$1 -# amz: 亚马逊 -^https:\/\/duckduckgo.com\/\?q=amz\+([^&]+).+ url 302 https://www.amazon.cn/gp/aw/s/?k=$1 -# jd : 京东 -^https:\/\/duckduckgo.com\/\?q=jd\+([^&]+).+ url 302 https://so.m.jd.com/ware/search.action?keyword=$1 -# tb: 淘宝 -^https:\/\/duckduckgo.com\/\?q=tb\+([^&]+).+ url 302 https://s.m.taobao.com/h5?q=$1 -# tm: 天猫 -^https:\/\/duckduckgo.com\/\?q=tm\+([^&]+).+ url 302 https://s.m.tmall.com/m/search.htm?q=$1 - -# 视频 -# ytb (YouTube) -^https:\/\/duckduckgo.com\/\?q=ytb\+([^&]+).+ url 302 https://www.youtube.com/results?search_query=$1 -# ph (PornHub) -^https:\/\/duckduckgo.com\/\?q=ph\+([^&]+).+ url 302 https://cn.pornhub.com/video/search?search=$1 -# gd (Google Drive) -^https:\/\/duckduckgo.com\/\?q=gd\+([^&]+).+ url 302 https://www.google.com/search?q=%22Google+Drive%22+$1 -# tgd (t.me/gdurl 搜索 Google Drive 资源) -^https:\/\/duckduckgo.com\/\?q=tgd\+([^&]+).+ url 302 https://t.me/s/gdurl?q=$1 - -# 搜索 -# bi: 必应 -^https:\/\/duckduckgo.com\/\?q=bi\+([^&]+).+ url 302 https://cn.bing.com/search?q=$1 -# bd: 百度 -^https:\/\/duckduckgo.com\/\?q=bd\+([^&]+).+ url 302 https://www.baidu.com/s?wd=$1 -# ddg: DuckDuckGo -^https:\/\/duckduckgo.com\/\?q=ddg\+([^&]+).+ url 302 https://duckduckgo.com/?ia=about&q=$1 -# 无指令: 谷歌 -^https:\/\/duckduckgo.com\/\?q=([^&]+).+ url 302 https://www.google.com/search?q=$1 - -# 分割线—————————————————————————— - -# > Hostname主机名 -hostname = duckduckgo.com diff --git a/QuantumultX/QuantumultX.conf b/QuantumultX/QuantumultX.conf deleted file mode 100644 index 7b458258..00000000 --- a/QuantumultX/QuantumultX.conf +++ /dev/null @@ -1,285 +0,0 @@ - -# >【🐲 MuTu木土】QuantumultX配置 -# > 以 “;” 或 “#” 或 “//“ 开头的行为注释行 -[general] -excluded_routes=192.168.0.0/16, 172.16.0.0/12, 100.64.0.0/10, 10.0.0.0/8, 127.0.0.0/8, 224.0.0.0/24 -geo_location_checker=http://ip-api.com/json/?lang=zh-CN, https://raw.githubusercontent.com/KOP-XIAO/QuantumultX/master/Scripts/IP_API.js -resource_parser_url=https://raw.githubusercontent.com/KOP-XIAO/QuantumultX/master/Scripts/resource-parser.js -network_check_url=http://www.baidu.com/ -server_check_url=http://www.gstatic.com/generate_204 -profile_img_url=MuTu.PNG - -# 分割线—————————————————————————— - -[dns] -server=119.29.29.29 -server=223.5.5.5 -server=114.114.114.114 -server=1.0.0.1 -server=8.8.8.8 -server=/*.taobao.com/223.5.5.5 -server=/*.tmall.com/223.5.5.5 -server=/*.alipay.com/223.5.5.5 -server=/*.alicdn.com/223.5.5.5 -server=/*.aliyun.com/223.5.5.5 -server=/*.jd.com/119.28.28.28 -server=/*.qq.com/119.28.28.28 -server=/*.tencent.com/119.28.28.28 -server=/*.weixin.com/119.28.28.28 -server=/*.bilibili.com/119.29.29.29 -server=/hdslb.com/119.29.29.29 -server=/*.163.com/119.29.29.29 -server=/*.126.com/119.29.29.29 -server=/*.126.net/119.29.29.29 -server=/*.127.net/119.29.29.29 -server=/*.netease.com/119.29.29.29 -server=/*.mi.com/119.29.29.29 -server=/*.xiaomi.com/119.29.29.29 - -# 分割线—————————————————————————— - -[policy] -# > 策略组 -# 运营劫持 -static=运营劫持, proxy, direct, reject, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Hijacking.png -# 广告拦截 -static=广告拦截, proxy, direct, reject, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Advertising.png -# SSID策略 -ssid=SSID策略, proxy, proxy, 一般路由器(WiFi): proxy, 翻墙路由器(WiFi): direct, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/SSID.png -# Final漏网规则 -static=漏网规则, proxy, direct, 线路检测, 负载均衡, Hong Kong, Taiwan, Singapore, Japan, Korea, United Kingdom, United States, Other, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Available.png -# 国外网站 -static=国外网站, proxy, direct, 线路检测, 负载均衡, Hong Kong, Taiwan, Singapore, Japan, Korea, United Kingdom, United States, Other, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Global.png -# 国外影视 -static=国外影视, proxy, direct, 线路检测, 负载均衡, Hong Kong, Taiwan, Singapore, Japan, Korea, United Kingdom, United States, Other, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/ForeignMedia.png -# YouTube -static=YouTube, proxy, direct, 线路检测, 负载均衡, Hong Kong, Taiwan, Singapore, Japan, Korea, United Kingdom, United States, Other, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/YouTube.png -# Netflix -static=Netflix, proxy, direct, 线路检测, 负载均衡, Hong Kong, Taiwan, Singapore, Japan, Korea, United Kingdom, United States, Other, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Netflix.png -# Pornhub -static=Pornhub, proxy, direct, 线路检测, 负载均衡, Hong Kong, Taiwan, Singapore, Japan, Korea, United Kingdom, United States, Other, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Pornhub.png -# 动画疯 -static=动画疯, proxy, direct, 线路检测, 负载均衡, Hong Kong, Taiwan, Singapore, Japan, Korea, United Kingdom, United States, Other, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Bahamut.png -# Telegram -static=Telegram, proxy, direct, 线路检测, 负载均衡, Hong Kong, Taiwan, Singapore, Japan, Korea, United Kingdom, United States, Other, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Telegram_X.png -# TikTok -static=TikTok, proxy, direct, 线路检测, 负载均衡, Hong Kong, Taiwan, Singapore, Japan, Korea, United Kingdom, United States, Other, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/TikTok.png -# Apple -static=Apple, proxy, direct, 线路检测, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Apple.png -# Google -static=Google, proxy, direct, 线路检测, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Google.png -# Speedtest -static=Speedtest, proxy, direct, 线路检测, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Speedtest.png -# 网易云解锁 -static=网易音乐, direct, proxy, reject, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Netease_Music_Unlock.png -# 负载均衡 -round-robin=负载均衡, 🇭🇰 香港标准 IPLC 03, 🇭🇰 香港标准 IPLC 02, 🇭🇰 香港标准 IPLC 04, 🇭🇰 香港标准 IPLC 05, 🇭🇰 香港标准 IPLC 06, 🇭🇰 香港标准 IPLC 07, 🇭🇰 香港标准 IPLC 11, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/SoftBank.png -# 线路检测 -available=线路检测, 🇭🇰 香港标准 IPLC 03, 🇭🇰 香港标准 IPLC 02, 🇭🇰 香港标准 IPLC 04, 🇭🇰 香港标准 IPLC 05, 🇭🇰 香港标准 IPLC 06, 🇭🇰 香港标准 IPLC 07, 🇭🇰 香港标准 IPLC 11, 🇸🇬 新加坡标准 IPLC 01, 🇸🇬 新加坡标准 IPLC 02, 🇯🇵 日本标准 IPLC, 🇺🇸 美国标准 IPLC, 🇭🇰 香港标准 IPLC 01, 🇭🇰 香港标准 IPLC 08, 🇭🇰 香港标准 IPLC 10, 🇭🇰 香港标准 IPLC 09, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Auto.png -# 屏蔽更新 -static=屏蔽更新, direct, reject, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Apple_Update.png -# CN(回国服务) -static=回国服务, direct, reject, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/China_Map.png - -# 分割线—————————————————————————— - -[server_remote] -# > 墙洞机场线路 - -# 分割线—————————————————————————— - -[filter_remote] -# > 分流订阅 -# 广告拦截(神机) -https://raw.githubusercontent.com/DivineEngine/Profiles/master/Quantumult/Filter/Guard/Advertising.list, tag=广告拦截, force-policy=广告拦截, update-interval=86400, opt-parser=false, enabled=true -# 广告拦截(野比) -https://raw.githubusercontent.com/NobyDa/Script/master/QuantumultX/AdRule.list, tag=广告拦截, force-policy=广告拦截, enabled=true -https://raw.githubusercontent.com/NobyDa/ND-AD/master/QuantumultX/AD_Block_Plus.txt, tag=广告拦截, force-policy=广告拦截, update-interval=86400, opt-parser=false, enabled=false -# Google -https://raw.githubusercontent.com/ConnersHua/Profiles/master/Quantumult/X/Filter/Google.list, tag=Google, force-policy=Google, enabled=true -# 运营劫持 -https://raw.githubusercontent.com/DivineEngine/Profiles/master/Quantumult/Filter/Guard/Hijacking.list, tag=运营劫持, force-policy=运营劫持, update-interval=86400, opt-parser=false, enabled=true -# TikTok -https://raw.githubusercontent.com/ConnersHua/Profiles/master/Quantumult/X/Filter/Media/TikTok.list, tag=TikTok, force-policy=TikTok, enabled=true -# CN(回国服务) -https://raw.githubusercontent.com/DivineEngine/Profiles/master/Quantumult/Filter/China.list, tag=CN(回国服务), force-policy=回国服务, update-interval=86400, opt-parser=false, enabled=true -# Telegram -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/Sub/Telegram.txt, tag=Telegram, force-policy=Telegram, enabled=true -# YouTube -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/Sub/YouTube.txt, tag=YouTube, force-policy=YouTube, enabled=true -# Netflix -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/Sub/Netflix.txt, tag=Netflix, force-policy=Netflix, enabled=true -# 解锁网易云音乐 -https://raw.githubusercontent.com/demo2099/QTXScripts/master/filter/NeteaseMusic.list, tag=网易音乐, force-policy=网易音乐, enabled=true -# 国外影视 -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/GlobalMedia.txt, tag=国外影视, force-policy=国外影视, enabled=true -# 动画疯 -https://raw.githubusercontent.com/ConnersHua/Profiles/master/Quantumult/X/Filter/Media/Bahamut.list, tag=动画疯, force-policy=动画疯, enabled=true -# Speedtest -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/Sub/Speedtest.txt, tag=Speedtest, force-policy=Speedtest, enabled=true -# Pornhub -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/Sub/Pornhub.txt, tag=Pornhub, force-policy=Pornhub, enabled=true -# 国外网站 -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/Global.txt, tag=国外网站, force-policy=国外网站, enabled=true -# 苹果CDN 资源类 -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/Apple_CDN.txt, tag=苹果CDN 资源类, force-policy=Apple, enabled=true -# 苹果API 服务类 -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/Apple_API.txt, tag=苹果API 服务类, force-policy=Apple, enabled=true -# 国内媒体 -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/AsianMedia.txt, tag=国内媒体, force-policy=回国服务, update-interval=86400, opt-parser=false, enabled=true -# 国内网站 -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Filter/Domestic.txt, tag=国内网站, force-policy=回国服务, update-interval=86400, opt-parser=false, enabled=true - -# 分割线—————————————————————————— - -[rewrite_remote] -# > 远程重写(远程) -# Cookie获取(Profiles文件夹引用) -Github_CK.conf, tag=Cookie 获取, update-interval=86400, opt-parser=false, enabled=false -# JavaScript合集(Profiles文件夹引用) -Github_JS.conf, tag=JavaScript合集, update-interval=86400, opt-parser=false, enabled=true -# Q-Search搜索(Profiles文件夹引用) -https://raw.githubusercontent.com/githubdulong/QuantumultX/master/Q-Search.conf, tag=Q-Search搜索, update-interval=86400, opt-parser=false, enabled=true -# boxjs会话切换 -https://raw.githubusercontent.com/chavyleung/scripts/master/QuantumultX.box.remote.conf, tag=boxjs会话切换, update-interval=86400, opt-parser=false, enabled=true -# Rewrite重写去广告 -https://raw.githubusercontent.com/DivineEngine/Profiles/master/Quantumult/Rewrite/Advertising.conf, tag=Rewrite重写AD, update-interval=86400, opt-parser=false, enabled=true -# eHpo1重写去广告 -https://raw.githubusercontent.com/eHpo1/Rules/master/QuantumultX/Rewrite.txt, tag=eHpo1重写AD, update-interval=86400, opt-parser=false, enabled=true - -# 分割线—————————————————————————— - -[server_local] -# > 本地节点 - -# 分割线—————————————————————————— - -[task_local] -# > Task定时脚本 -# 切换会话 -0 10,20 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/box/switcher/box.switcher.js, tag=会话切换, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/box.png, enabled=false -# 京东签到 -0,30 0 0 * * * https://raw.githubusercontent.com/NobyDa/Script/master/JD-DailyBonus/JD_DailyBonus.js, tag=京东商城, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/jd.png, enabled=true -# 饿了么签到 -0 1 0 * * * https://raw.githubusercontent.com/songyangzz/QuantumultX/master/elem/elemSign.js, tag=饿了签到, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/elem.png, enabled=true -# 饿了么打卡 -30 1 0 * * * https://raw.githubusercontent.com/zZPiglet/Task/master/elem/elemCheckIn.js, tag=饿了打卡, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/elem.png, enabled=true -# 去哪儿签到 -0 2 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/qunar/qunar.js, tag=去哪签到, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/qunar.png, enabled=true -# 人人字幕组 -30 2 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/zimuzu/zimuzu.js, tag=人人字幕, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/zimuzu.png, enabled=true -# 人人视频 -0 3 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/rrtv/rrtv.js, tag=人人视频, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/rrtv.png, enabled=true -# 喜马拉雅 -30 3 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/ximalaya/ximalaya.js, tag=喜马拉雅, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/ximalaya.png, enabled=true -# 美团签到 -0 4 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/meituan/meituan.js, tag=美团签到, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/meituan.png, enabled=true -# 网易音乐 -30 4 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/neteasemusic/quanx/neteasemusic.js, tag=网易音乐, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/Netease.png, enabled=true -# 京东到家 -0 5 0 * * * https://raw.githubusercontent.com/Sunert/Scripts/master/Task/jddj.js, tag=京东到家, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/jddj.png, enabled=true -# 新浪微博 -30 5 5 * * * https://raw.githubusercontent.com/Sunert/Scripts/master/Task/weibo.js, tag=新浪微博, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/weibo.png, enabled=true -# 顺丰速运 -0 6 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/sfexpress/sfexpress.js, tag=顺丰速运, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/sfexpress.png, enabled=true -# 苏宁易购 -30 6 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.js, tag=苏宁易购, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/suning.png, enabled=true -# 吾爱破解 -0 7 0 * * * https://raw.githubusercontent.com/NobyDa/Script/master/52pojie-DailyBonus/52pojie.js, tag=吾爱破解, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/52pj.png, enabled=true -# 网易新闻 -30 7 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/neteasenews/neteasenews.js, tag=网易新闻, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/neteasenews.png, enabled=true -# 滴滴出行 -0 8 0 * * * https://raw.githubusercontent.com/zZPiglet/Task/master/DiDi/DiDi.js, tag=滴滴出行, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/didi.png, enabled=true -# 哔哩哔哩 -30 8 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/bilibili/bilibili.js, tag=哔哩哔哩, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/bilibili.png, enabled=true -# 115网盘 -0 9 0 * * * https://raw.githubusercontent.com/zZPiglet/Task/master/115/115.js, tag=115网盘, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/115.png, enabled=true -# 电信签到 -30 9 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/10000/10000.js, tag=电信签到, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/10000.png, enabled=true -# 移动签到 -0 10 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.js, tag=移动签到, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/10086fee.png, enabled=true -# 百度贴吧 -30 10 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/tieba/tieba.js, tag=百度贴吧, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/tieba.png, enabled=true -# 万达电影 -0 11 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/wanda/wanda.js, tag=万达电影, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/wanda.png, enabled=true -# 威锋论坛 -30 11 0 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/feng/feng.js, tag=威锋论坛, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/feng.png, enabled=true -# 欧可林商城 -0 12 0 * * * https://raw.githubusercontent.com/zZPiglet/Task/master/Oclean/Oclean_mini.js, tag=可林商城, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/Oclean.png, enabled=true -# GitHub监控 -0 5 0/1 * * * https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/github.js, tag=GitHub库, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/github.png, enabled=true -# 金山WPS -0 2 8 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/wps/wps.js, tag=金山WPS, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/wps.png, enabled=true -# 移动余量 -0 0 9 * * * https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.fee.js, tag=移动余量, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/10086.png, enabled=true -# 电信余量 -0 1 9 * * * https://raw.githubusercontent.com/Sunert/Scripts/master/Task/telecomInfinity.js, tag=电信余量, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/telecominfinty.png, enabled=true -# 天气预报 -0 1 8,18 * * * https://raw.githubusercontent.com/githubdulong/Script/mutu/weather_pro2.js, tag=天气预报, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/weather.png, enabled=true -# 彩云天气 -0 1 8-20/1 * * * https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/caiyun.js, tag=彩云天气, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/caiyun.png, enabled=true -# 降雨提醒 -0 2 8-20/4 * * * https://raw.githubusercontent.com/toulanboy/scripts/master/weather/weather.js, tag=降雨提醒, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/weather.png, enabled=false -# 墙洞机场 -0 0 8-22/2 * * * https://raw.githubusercontent.com/githubdulong/Script/master/dlercloud.js, tag=墙洞机场, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/airport.png, enabled=true -# 流量监控 -30 30 8,22 * * * https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/flow.js, tag=流量监控, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/airport.png, enabled=true -# 电视预告 -0 2 9 * * * https://raw.githubusercontent.com/Sunert/Scripts/master/Task/tvpreview.js, tag=电视预告, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/dianshijia.png, enabled=true -# 实时汇率 -40 0 9 * * * https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/exchange.js, tag=实时汇率, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/exchangerate.png, enabled=true -# Epic游戏限免 -0 8 10 * * * https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/epic.js, tag=游戏限免, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/epic.png, enabled=true -# PSN会免 -30 8 10 * * * https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/psn.js, tag=PSN会免, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/PSN.png, enabled=true -# Steam价格 -0 9 10 * * * https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/steam.js, tag=Sem价格, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/steam.png, enabled=true -# TG电报图片推送 -0 3 10-20/2 * * * https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/telegram.js, tag=电报推送, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/tgpic.png, enabled=true -# 疫情报告 -0 30 8 * * * https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/nCov.js, tag=疫情报告, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/COVID-19.png, enabled=true -# 猫眼电影 -0 1 18 * * * https://ooxx.be/js/maoyan.js, tag=猫眼电影, img-url=https://raw.githubusercontent.com/Orz-3/mini/master/maoyan.png, enabled=true - -# 分割线—————————————————————————— - -[rewrite_local] - -# 分割线—————————————————————————— - -[filter_local] -# > 本地写入分流 -# Steam、Epic(新增代理) -host, rsshub.app, proxy -host, steamdb.info, direct -# 1password(新增直连) -host, c.1password.com, direct -host, watchtower.1password.com, direct -# 微软office(新增直连) -host, substrate.office.com, direct -host, nexus.officeapps.live.com, direct -host, roaming.officeapps.live.com, direct -host, odc.officeapps.live.com, direct -host, ocws.officeapps.live.com, direct -# 绕过企业证书过期 -host, ocsp.apple.com, reject -# 屏蔽系统更新 -host, gdmf.apple.com, 屏蔽更新 -host, mesu.apple.com, 屏蔽更新 -# 去掉YouTube+底部广告 -host-suffix, ehg-youtube.hitbox.com, reject -ip-cidr, 10.0.0.0/8, direct -ip-cidr, 127.0.0.0/8, direct -ip-cidr, 172.16.0.0/12, direct -ip-cidr, 192.168.0.0/16, direct -ip-cidr, 224.0.0.0/24, direct -geoip, cn, direct -# 漏网规则 -final, 漏网规则 - -# 分割线—————————————————————————— - -[mitm] -# > 通用证书 -passphrase = 52E176D8 -p12 = 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 diff --git a/README.md b/README.md deleted file mode 100644 index d016b320..00000000 --- a/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# Surge-module -Surge/module diff --git a/Surge/Cookie.sgmodule b/Surge/Cookie.sgmodule deleted file mode 100644 index e6d153ca..00000000 --- a/Surge/Cookie.sgmodule +++ /dev/null @@ -1,71 +0,0 @@ -#!name=𝘾𝙤𝙤𝙠𝙞𝙚 -#!desc=Cookie获取 • 签到脚本Cookie获取、集成主机名、获取后取消勾选; -#!system=ios - -[Script] -# > 京东商城 登录 https://bean.m.jd.com -京东商城 = max-size=0,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/JD-DailyBonus/JD_DailyBonus.js,type=http-request,pattern=https:\/\/api\.m\.jd\.com\/client\.action.*functionId=signBean(Index|GroupStageIndex) -# > 网易云音乐 -#登录1 https://music.163.com/m/login -#登陆2 https://music.163.com/#/user/level -网易音乐 = type=http-request,pattern=^https:\/\/music.163.com\/weapi\/user\/level,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/neteasemusic/neteasemusic.cookie.js,script-update-interval=0 -# > 人人字幕组 app与网页http://www.rrys2020.com -人人字幕 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/zimuzu/zimuzu.cookie.js,type=http-request,pattern=^https?:\/\/(www\.)?rrys2020\.com\/?.? -人人字幕 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/zimuzu/zimuzu.cookie.js,type=http-request,pattern=^http:\/\/ios.zmzapi.com\/index.php.*a=(mobile_)?login -# > 喜马拉雅 app获取 -喜马拉雅 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/ximalaya/ximalaya.cookie.js,type=http-request,pattern=^https?:\/\/.*\/mobile\-user\/homePage\/.* -# > 人人视频 app获取 -人人视频 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/rrtv/rrtv.cookie.js,type=http-request,pattern=^https:\/\/api\.rr\.tv\/user\/profile -# > 饿了么 app获取 -饿了获取 = script-path=https://raw.githubusercontent.com/songyangzz/QuantumultX/master/elem/elemGetCookies.js,type=http-request,pattern=^https:\/\/h5\.ele\.me\/restapi\/eus\/v\d\/current_user$ -# > 中国电信套餐余量 天翼账号中心app获取 -电信余量 = script-path=https://raw.githubusercontent.com/Sunert/Scripts/master/Task/telecomInfinity.js,type=http-request,pattern=https?:\/\/e\.189\.cn\/store\/user\/package_detail\.do -# > 美团 app获取 -美团获取 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/meituan/meituan.cookie.js,requires-body=true,type=http-request,pattern=^https:\/\/i.meituan.com\/evolve\/signin\/signpost\/ -# > 京东到家 京东app-京东到家栏目获取 -京东到家 = script-path=https://raw.githubusercontent.com/Sunert/Scripts/master/Task/jddj.js,type=http-request,pattern=https:\/\/daojia\.jd\.com\/client\?_jdrandom=\d{13}&functionId=%2Fsignin -# > 新浪微博 app获取 -新浪微博 = script-path=https://raw.githubusercontent.com/Sunert/Scripts/master/Task/weibo.js,type=http-request,pattern=https:\/\/api\.weibo\.cn\/\d\/video\/machine\?gsid -微博钱包 = script-path=https://raw.githubusercontent.com/Sunert/Scripts/master/Task/weibo.js,type=http-request,pattern=http-request,pattern=https:\/\/pay\.sc\.weibo\.com\/aj\/mobile\/home\/welfare\/signin\/do\? -# > 顺丰速运 app获取 -顺丰速运 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/sfexpress/sfexpress.cookie.js,type=http-request,pattern=^https:\/\/sf-integral-sign-in.weixinjia.net\/app\/index -顺丰速运 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/sfexpress/sfexpress.cookie.js,type=http-request,pattern=^https:\/\/mcs-mimp-web.sf-express.com\/mcs-mimp\/share\/(.*?)Redirect -# > 苏宁易购 app获取 -苏宁易购 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.cookie.js,requires-body=true,type=http-request,pattern=^https:\/\/passport.suning.com\/ids\/login$ -苏宁易购 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.cookie.js,type=http-request,pattern=^https:\/\/luckman.suning.com\/luck-web\/sign\/api\/clock_sign.do -苏宁易购 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.cookie.js,type=http-request,pattern=^https:\/\/sign.suning.com\/sign-web\/m\/promotion\/sign\/doSign.do -苏宁易购 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.cookie.js,type=http-request,pattern=^https:\/\/gameapi.suning.com\/sngame-web\/(api\/signin\/private\/customerSignOperation.do|gateway\/api\/queryPrize.do) -# > 金山WPS app、微信“我的WPS会员”小程序获取 -金山WPS = type=http-request,pattern=^https:\/\/zt.wps.cn\/2018\/docer_check_in\/api\/act_list,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/wps/wps.cookie.js,script-update-interval=0 -金山WPS = type=http-request,pattern=^https:\/\/zt.wps.cn\/2018\/clock_in\/api\/clock_in,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/wps/wps.cookie.js,script-update-interval=0 -# > Dler Cloud墙洞机场统计版 登陆https://dleris.best/ -墙洞机场 = type=http-request,pattern=^https:\/\/dleris\.best\/user,script-path=https://raw.githubusercontent.com/githubdulong/Script/master/dlercloud.js,script-update-interval=0 -# > 吾爱破解 登陆https://www.52pojie.cn -吾爱破解 = type=http-request,pattern=https:\/\/www\.52pojie\.cn\/home\.php\?,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/52pojie-DailyBonus/52pojie.js -# > 网易新闻 app获取 -网易新闻 = type=http-request,pattern=^https:\/\/(.*?)c\.m\.163\.com\/uc\/api\/sign\/v3\/commit,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/neteasenews/neteasenews.cookie.js,script-update-interval=0 -# > 去哪儿 app获取 -去哪获取 = script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/qunar/qunar.cookie.js,type=http-request,pattern=^https:\/\/user.qunar.com\/webapi\/member\/signIndexV2.htm -# > 滴滴出行 app获取 -滴滴出行 = type=http-request,pattern=^https:\/\/as\.xiaojukeji\.com\/ep\/as\/toggles\?,script-path=https://raw.githubusercontent.com/zZPiglet/Task/master/DiDi/DiDi.js,script-update-interval=0 -# > 百度贴吧 登陆https://tieba.baidu.com -百度贴吧 = type=http-request,pattern=^https?:\/\/tieba\.baidu\.com\/?.?,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/tieba/tieba.cookie.js,script-update-interval=0 -# > 哔哩哔哩 登录: https://www.bilibili.com -哔哩哔哩 = type=http-request,pattern=^https:\/\/(www|live)\.bilibili\.com\/?.?,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/bilibili/bilibili.cookie.js,script-update-interval=0 -# > 115云盘 app获取 -1 1 5 云盘 = type=http-request,pattern=^https?:\/\/proapi\.115\.com\/ios\/user\/takespc\?,script-path=https://raw.githubusercontent.com/zZPiglet/Task/master/115/115.js,script-update-interval=0 -# > 中国移动 余量 app获取 -移动余量 = type=http-request,pattern=^https:\/\/clientaccess.10086.cn\/biz-orange\/LN\/uamrandcodelogin\/autoLogin,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.fee.cookie.js,requires-body=true,debug=true -移动余量 = type=http-request,pattern=^https:\/\/clientaccess.10086.cn\/biz-orange\/BN\/realFeeQuery\/getRealFee,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.fee.cookie.js,requires-body=true,debug=true -# > 中国移动 签到 app获取 -中国移动 = type=http-request,pattern=^http:\/\/wx.10086.cn\/website\/taskCenter\/index\?,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.cookie.js,script-update-interval=0 -中国移动 = type=http-request,pattern=^http:\/\/wx.10086.cn\/website\/taskCenter\/sign\?,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.cookie.js,script-update-interval=0 -# > 万达电影 app获取 -万达电影 = type=http-request,pattern=^https:\/\/user-api-prd-mx\.wandafilm\.com,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/wanda/wanda.cookie.js,debug=true -# > 可林商城 小程序获取 -可林商城 = type=http-request,pattern=^https:\/\/mall\.oclean\.com\/API\/VshopProcess\.ashx\?action=TaskHome&clientType=5&client=5&openId=,script-path=https://raw.githubusercontent.com/zZPiglet/Task/master/Oclean/Oclean_mini.js,script-update-interval=0 - --------- 分 - 割 - 线 -------- = type=http-request,pattern=分割线,script-path=Script/分割线.js - -[MITM] -hostname = %INSERT% api.m.jd.com, music.163.com, *.rrys2020.com, ios.zmzapi.com, mobwsa.ximalaya.com, *.rr.tv, h5.ele.me, e.189.cn, i.meituan.com, daojia.jd.com, api.weibo.cn, pay.sc.weibo.com, sf-integral-sign-in.weixinjia.net, mcs-mimp-web.sf-express.com, passport.suning.com, luckman.suning.com, sign.suning.com, gameapi.suning.com, draw.jdfcloud.com, zt.wps.cn, dleris.best, www.52pojie.cn, *.m.163.com, user.qunar.com, as.xiaojukeji.com, tieba.baidu.com, *.bilibili.com, proapi.115.com, clientaccess.10086.cn, user-api-prd-mx.wandafilm.com, mall.oclean.com diff --git a/Surge/Q-Search_All_in_one.sgmodule b/Surge/Q-Search_All_in_one.sgmodule deleted file mode 100644 index dcd295b3..00000000 --- a/Surge/Q-Search_All_in_one.sgmodule +++ /dev/null @@ -1,125 +0,0 @@ -#!name=𝙌-𝙎𝙚𝙖𝙧𝙘𝙝-𝘼𝙡𝙡 𝙞𝙣 𝙤𝙣𝙚 -#!desc=Safari搜索 • 命令+空格+关键词指定引擎快速搜索(Safari 搜索改为DuckDuckGO)集成主机名; -#!system=ios - -# gh: GitHub搜索 -# gm: Google图片搜索 -# sof: Stack Overflow -# se: StackExchange -# wiki: 维基百科 -# wk: 维基中文 -# mg: Magi -# tf: Google 搜索 TestFlight - -# yd:有道词典搜索 -# trc: Google 译至中 -# tre: Google 译至英 -# trj: Google 译至日 - -# db:豆瓣搜索 -# zh: 知乎 -# wb: 微博 -# wx: 微信 -# rd: Reddit -# ssp: 少数派 -# csdn: CSDN - -# zdm: 什么值得买 -# amz: 亚马逊 -# jd: 京东 -# tb: 淘宝 -# tm: 天猫 - -# ac: Acfun -# bli: 哔哩哔哩 -# ytb: YouTube -# ph: PornHub -# gd: Google Drive资源 -# tgd: TG搜索Google Drive资源 - -# bi: 必应 -# bd:百度搜索 -# ddg:DuckDuckGo 搜索 -# 无指令则转 Google 搜索 - -[URL Rewrite] -#gm (Google图片) -^https:\/\/duckduckgo.com\/\?q=gm\+([^&]+).+ https://www.google.com/search?&tbm=isch&q=$1 302 -# gh (GitHub) -^https:\/\/duckduckgo.com\/\?q=gh\+([^&]+).+ https://github.com/search?q=$1 302 -# sof (Stack Overflow) -^https:\/\/duckduckgo.com\/\?q=sof\+([^&]+).+ https://stackoverflow.com/search?q=$1 302 -# se (StackExchange) -^https:\/\/duckduckgo.com\/\?q=se\+([^&]+).+ https://stackexchange.com/search?q=$1 302 -# wa (WolframAlpha) -^https:\/\/duckduckgo.com\/\?q=wa\+([^&]+).+ https://www.wolframalpha.com/input/?i=$1 302 -# wiki (维基百科) -^https:\/\/duckduckgo.com\/\?q=wiki(\+|%20)([^&]+).+ http://wikipedia.org/wiki/$2 302 -# wk (维基中文) -^https:\/\/duckduckgo.com\/\?q=wk(\+|%20)([^&]+).+ https://zh.wikipedia.org/wiki/$2 302 -# mg (Magi) -^https:\/\/duckduckgo.com\/\?q=mg(\+|%20)([^&]+).+ https://magi.com/search?q=$2 302 -# tf (Google 搜索 TestFlight) -^https:\/\/duckduckgo.com\/\?q=tf(\+|%20)([^&]+).+ https://www.google.com/search?as_q=$2&as_sitesearch=testflight.apple.com 302 -# > 翻译 -# yd (有道) -^https:\/\/duckduckgo.com\/\?q=yd\+([^&]+).+ http://dict.youdao.com/search?q=$1 302 -# trc (Google 译至中) -^https:\/\/duckduckgo.com\/\?q=trc\+([^&]+).+ https://translate.google.com/#view=home&op=translate&sl=auto&tl=zh-CN&text=$1 302 -# tre (Google 译至英) -^https:\/\/duckduckgo.com\/\?q=tre\+([^&]+).+ https://translate.google.com/#view=home&op=translate&sl=auto&tl=en&text=$1 302 -# trj (Google 译至日) -^https:\/\/duckduckgo.com\/\?q=trj\+([^&]+).+ https://translate.google.com/#view=home&op=translate&sl=auto&tl=ja&text=$1 302 -# 社区 -# db:豆瓣 -^https:\/\/duckduckgo.com\/\?q=db\+([^&]+).+ https://m.douban.com/search/?query=$1 302 -# zh: 知乎 -^https:\/\/duckduckgo.com\/\?q=zh\+([^&]+).+ https://www.zhihu.com/search?type=content&q=$1 302 -# wb: 微博 -^https:\/\/duckduckgo.com\/\?q=wb\+([^&]+).+ https://s.weibo.com/weibo/$1 302 -# wx: 微信 -^https:\/\/duckduckgo.com\/\?q=wx\+([^&]+).+ https://weixin.sogou.com/weixinwap?query=$1 302 -# rd (Reddit) -^https:\/\/duckduckgo.com\/\?q=rd\+([^&]+).+ https://www.reddit.com/search?q=$1 302 -# tw (Twitter) -^https:\/\/duckduckgo.com\/\?q=tw\+([^&]+).+ https://twitter.com/search?q=$1 302 -# ssp: 少数派 -^https:\/\/duckduckgo.com\/\?q=ssp\+([^&]+).+ https://sspai.com/search/post/$1 302 -# csdn: CSDN -^https:\/\/duckduckgo.com\/\?q=csdn\+([^&]+).+ https://so.csdn.net/so/search/s.do?q=$1&t=&u= 302 -# > 购物 -# zdm: 什么值得买 -^https:\/\/duckduckgo.com\/\?q=zdm\+([^&]+).+ https://search.m.smzdm.com/?v=b&s=$1 302 -# amz: 亚马逊 -^https:\/\/duckduckgo.com\/\?q=amz\+([^&]+).+ https://www.amazon.cn/gp/aw/s/?k=$1 302 -# jd : 京东 -^https:\/\/duckduckgo.com\/\?q=jd\+([^&]+).+ https://so.m.jd.com/ware/search.action?keyword=$1 302 -# tb: 淘宝 -^https:\/\/duckduckgo.com\/\?q=tb\+([^&]+).+ https://s.m.taobao.com/h5?q=$1 302 -# tm: 天猫 -^https:\/\/duckduckgo.com\/\?q=tm\+([^&]+).+ https://s.m.tmall.com/m/search.htm?q=$1 302 -# 视频资源 -# ac (Acfun) -^https:\/\/duckduckgo.com\/\?q=ac\+([^&]+).+ https://www.acfun.cn/search?keyword==$1 302 -# bli (哔哩哔哩) -^https:\/\/duckduckgo.com\/\?q=bli\+([^&]+).+ https://m.bilibili.com/search?keyword=$1 302 -# ytb (YouTube) -^https:\/\/duckduckgo.com\/\?q=ytb\+([^&]+).+ https://www.youtube.com/results?search_query=$1 302 -# ph (PornHub) -^https:\/\/duckduckgo.com\/\?q=ph\+([^&]+).+ https://cn.pornhub.com/video/search?search=$1 302 -# gd (Google Drive) -^https:\/\/duckduckgo.com\/\?q=gd\+([^&]+).+ https://www.google.com/search?q=%22Google+Drive%22+$1 302 -# tgd (t.me/gdurl 搜索 Google Drive 资源) -^https:\/\/duckduckgo.com\/\?q=tgd\+([^&]+).+ https://t.me/s/gdurl?q=$1 302 -# 默认搜索 -# bi: 必应 -^https:\/\/duckduckgo.com\/\?q=bi\+([^&]+).+ https://cn.bing.com/search?q=$1 302 -# bd: 百度 -^https:\/\/duckduckgo.com\/\?q=bd\+([^&]+).+ https://www.baidu.com/s?wd=$1 302 -# ddg: DuckDuckGo -^https:\/\/duckduckgo.com\/\?q=ddg\+([^&]+).+ https://duckduckgo.com/?ia=about&q=$1 302 -# 无指令: 谷歌 -^https:\/\/duckduckgo.com\/\?q=([^&]+).+ https://www.google.com/search?q=$1 302 - -[MITM] -hostname = %APPEND% duckduckgo.com diff --git a/Surge/Script.sgmodule b/Surge/Script.sgmodule deleted file mode 100644 index 7c09beef..00000000 --- a/Surge/Script.sgmodule +++ /dev/null @@ -1,140 +0,0 @@ -#!name=𝙎𝙘𝙧𝙞𝙥𝙩 -#!desc=Java Script合集 • 包含Host映射、Rule规则、Rewrite重写、Script破解、集成主机名; -#!system=ios - -[Host] -iosapps.itunes.apple.com = script:商店加速 -ip6-localhost = ::1 -ip6-loopback = ::1 -taobao.com = server:223.6.6.6 -*.taobao.com = server:223.6.6.6 -tmall.com = server:223.6.6.6 -*.tmall.com = server:223.6.6.6 -jd.com = server:119.29.29.29 -*.jd.com = server:119.28.28.28 -*.qq.com = server:119.28.28.28 -*.bilibili.com = server:119.29.29.29 -*.tencent.com = server:119.28.28.28 -*.alicdn.com = server:223.5.5.5 -aliyun.com = server:223.5.5.5 -*.aliyun.com = server:223.5.5.5 -weixin.com = server:119.28.28.28 -*.weixin.com = server:119.28.28.28 -hdslb.com = server:119.29.29.29 -163.com = server:119.29.29.29 -*.163.com = server:119.29.29.29 -126.com = server:119.29.29.29 -*.126.com = server:119.29.29.29 -*.126.net = server:119.29.29.29 -*.127.net = server:119.29.29.29 -*.netease.com = server:119.29.29.29 -mi.com = server:119.29.29.29 -*.mi.com = server:119.29.29.29 -xiaomi.com = server:119.29.29.29 -*.xiaomi.com = server:119.29.29.29 -dler.cloud = server:180.76.76.76 -dleris.best = server:180.76.76.76 -routerlogin.net = server:system -_hotspot_.m2m = server:system -router.asus.com = server:system -hotspot.cslwifi.com = server:system -amplifi.lan = server:system -*.lan = server:system - -[General] -# > 优酷 去广告 -//force-http-engine-hosts = %APPEND% vali.cp31.ott.cibntv.net - -[Rule] -# > 人人视频 去广告 -AND,((USER-AGENT,PUClient*), (NOT,((DOMAIN-SUFFIX,rr.tv)))),REJECT -URL-REGEX,^https?:\/\/api\.rr\.tv\/(?:ad\/getAll$|storage/business/rootName/app/homePage),REJECT -# > 优酷 去广告 -URL-REGEX,^http:\/\/vali\.cp31\.ott\.cibntv\.net\/youku\/,REJECT-TINYGIF -# > 京东 去广告 -URL-REGEX,^https?:\/\/api\.m\.jd\.com\/client\.action\?functionId=start$,REJECT-TINYGIF -# > 哔哩哔哩 去广告 -URL-REGEX,https://app.bilibili.com/x/v2/(splash|search/(defaultword|square)),REJECT -URL-REGEX,https://api.bilibili.com/x/v2/dm/ad,REJECT - -[URL Rewrite] -# > TikTok封区解锁 -(?<=_region=)CN(?=&) VN 307 -(?<=&app_version=)16..(?=.?.?&) 1 307 -(?<=\?version_code=)16..(?=.?.?&) 1 307 - -[Header Rewrite] -# > 小小影视解锁 -https:\/\/.*.xiaoxiao(img|apps|appxs).com header-replace Cookie xxx_api_auth=6131333537653261363463323331666265663763396239663835636662373930 - -[Script] -# > 京东 历史价格 -京东比价 = type=http-response,pattern=^https?://api\.m\.jd\.com/client\.action\?functionId=(wareBusiness|serverConfig),requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/yichahucha/surge/master/jd_price.js,use-local-host-item-for-proxy = true,script-update-interval=0 -# > 淘宝 历史价格 -淘宝比价 = requires-body=1,script-path=https://raw.githubusercontent.com/yichahucha/surge/master/tb_price.js,type=http-request,pattern=^http://.+/amdc/mobileDispatch,use-local-host-item-for-proxy = true -淘宝比价 = requires-body=1,script-path=https://raw.githubusercontent.com/yichahucha/surge/master/tb_price.js,type=http-response,pattern=^https?://trade-acs\.m\.taobao\.com/gw/mtop\.taobao\.detail\.getdetail,use-local-host-item-for-proxy = true -// 淘宝 lite = type=http-request,pattern=^https?://.+/amdc/mobileDispatch,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/yichahucha/surge/master/tb_price_lite.js,script-update-interval=0 -// 淘宝 lite = type=http-response,pattern=^https?://trade-acs\.m\.taobao\.com/gw/mtop\.taobao\.detail\.getdetail,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/yichahucha/surge/master/tb_price_lite.js,script-update-interval=0 -# > 奈飞 评分 -// 奈飞评分 = script-path=https://raw.githubusercontent.com/yichahucha/surge/master/nf_rating.js,type=http-request,pattern=^https?://ios\.prod\.ftl\.netflix\.com/iosui/user/.+path=%5B%22videos%22%2C%\d+%22%2C%22summary%22%5D -// 奈飞评分 = requires-body=1,script-path=https://raw.githubusercontent.com/yichahucha/surge/master/nf_rating.js,type=http-response,pattern=^https?://ios\.prod\.ftl\.netflix\.com/iosui/user/.+path=%5B%22videos%22%2C%\d+%22%2C%22summary%22%5D -// 单集评分 = type=http-response,pattern=^https?://ios\.prod\.ftl\.netflix\.com/iosui/warmer/.+type=show-ath,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/yichahucha/surge/master/nf_rating_season.js -# > 新浪微博 去广告 -微博广告 = requires-body=1,script-path=https://raw.githubusercontent.com/yichahucha/surge/master/wb_launch.js,type=http-response,pattern=^https?://(sdk|wb)app\.uve\.weibo\.com(/interface/sdk/sdkad.php|/wbapplua/wbpullad.lua) -微博广告 = type=http-response,requires-body=1,max-size=-1,pattern=^https?://m?api\.weibo\.c(n|om)/2/(statuses/(unread|extend|positives/get|(friends|video)(/|_)(mix)?timeline)|stories/(video_stream|home_list)|(groups|fangle)/timeline|profile/statuses|comments/build_comments|photo/recommend_list|service/picfeed|searchall|cardlist|page|!/photos/pic_recommend_status|video/tiny_stream_video_list),script-path=https://raw.githubusercontent.com/yichahucha/surge/master/wb_ad.js -# > 微信公众号 去广告 -微信广告 = script-path=https://Choler.github.io/Surge/Script/WeChat.js,type=http-request,pattern=^https://mp\.weixin\.qq\.com/mp/getappmsgad -openad$ -# > YouTube 去广告 -油管广告 = script-path=https://Choler.github.io/Surge/Script/YouTube.js,type=http-request,pattern=^https://[\s\S]*\.googlevideo\.com/.*&(oad|ctier) -# > 人人视频 去广告 -人人广告 = type=http-response,requires-body=true,pattern=^https?:\/\/api\.rr\.tv\/watch\/v\d\/get_movie_info,script-path=https://Choler.github.io/Surge/Script/rrsp.js -人人广告 = type=http-response,requires-body=true,pattern=^https?:\/\/api\.rr\.tv\/v\dplus\/index\/channel$,script-path=https://Choler.github.io/Surge/Script/rrsp.js -# > 小小影视TF 去广告 -小小广告 = type=http-response,pattern=https:\/\/.*\/getGlobalData,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/Alex0510/Eric/master/surge/Script/xxysad.js,script-update-interval=0 -# > 哔哩哔哩 去广告 -哔哩广告 = type=http-response,requires-body=1,max-size=0,pattern=https://app.bilibili.com/x/resource/show/tab\?access_key,script-path=https://raw.githubusercontent.com/onewayticket255/Surge-Script/master/surge%20bilibili%20tab.js -# > 香蕉视频 vip -香蕉破解 = requires-body=1,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/QuantumultX/File/xjsp.js,type=http-response,pattern=^https?:\/\/.*\.(lago|fuli|xiang(jiao|xiang))apps\.com\/(ucp\/index|getGlobalData|.+\/reqplay\/) -# > 金山WPS vip -WPS破解 = requires-body=1,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Wps.js,type=http-response,pattern=^https://account.wps.*/api/users/ -# > 大千视界 pro -大千破解 = requires-body=1,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/dqsj.js,type=http-response,pattern=^https:\/\/api\.mvmtv\.com\/index\.php.*(c=user.*a=info|a=addr.*vid=.*) -# > 扫描全能王 pro -扫描破解 = requires-body=1,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/CamScanner.js,type=http-response,pattern=^https:\/\/(api|api-cs)\.intsig\.net\/purchase\/cs\/query_property\? -# > Gyroscope运动 pro -// 运动破解 = requires-body=1,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/gyroscope.js,type=http-response,pattern=^https:\/\/api\.gyrosco\.pe\/v1\/account\/$ -# > Bear熊掌记 vip -// Bear破解 = requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/bear.js,type=http-response,pattern=^https:\/\/buy\.itunes\.apple\.com\/verifyReceipt -# > Day one日记 vip(成功后禁用第一条) -// 日记破解 = debug=1,script-path=https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/dayone-pre.js,type=http-request,pattern=^https:\/\/dayone\.me\/api\/users$ -日记破解 = requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/langkhach270389/Scripting/master/dayone.surge.js,script-update-interval=0,type=http-response,pattern=^https:\/\/dayone\.me\/api\/(users|v2\/users\/(account-status|receipt)) -#> WorkingCopy库 pro -Copy破解 = requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/langkhach270389/Scripting/master/workingcopy.js,script-update-interval=0,type=http-response,pattern=^https:\/\/education\.github\.com\/api\/user$ -# > PDF Expert办公 pro -PDF 破解 = requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/langkhach270389/Scripting/master/Pdfexpert.vip.js,script-update-interval=0,type=http-response,pattern=^https:\/\/license\.pdfexpert\.com\/api\/.+\/subscription\/(refresh$|check$) -# > Fantastical日历 vip -日历破解 = requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/fantastical.js,type=http-response,pattern=^https:\/\/api\.flexibits\.com\/v1\/(auth|account)\/(device|details|appstore-receipt)\/$ -# > 闪电下载 vip -闪电下载 = requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/nzw9314/QuantumultX/master/Script/sdxz.js,type=http-response,pattern=^http\:\/\/app\.flashdown365\.com\/ios\/login -# > 彩云天气 vip -//彩云天气 = type=http-response,pattern=https://biz.caiyunapp.com/v2/user\?app_name=weather,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/nzw9314/Surge/master/Script/caiyun.js -彩云天气 = type=http-response,pattern=https://biz.caiyunapp.com/v2/user\?app_name=weather,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/LeeeMooo/ScriptOwn/master/myQx/js/caiyun.js -# > Pear 雪梨(本地) -雪梨破解 = requires-body=1,max-size=0,script-path=Script/pear.js,type=http-response,pattern=^https:\/\/(www\.baidu.com2\.club|ayk\.tmdidi\.com|m\.pearkin\.com|souhu\.mett\.me|bkcd\.b-cdn\.net)\/(api\/movie\/WatchMovie|api\/Account\/CheckVip|api\/account\/IndexDetail) -# > apple下载加速 -// dns 商店加速 script-path=https://raw.githubusercontent.com/langkhach270389/Scripting/master/Surge/dnspod.js,use-local-host-item-for-proxy = true,script-update-interval=0 -# > 脚本转换(圈X、LOON、surge脚本自动转换) -//脚本转换 = type=http-response,pattern=^https?:\/\/(raw|gist)\.githubusercontent.com/.*\.js$,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/Peng-YM/ScriptConverter/master/js-converter.js,script-update-interval=0 -# > 多账号切换获取Cookie 访问https://8.8.8.8/home -切换会话 = type=http-request,pattern=^https://8.8.8.8/api,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/chavy.box.js,requires-body=true,max-size=0,script-update-interval=0 -切换会话 = type=http-response,pattern=^https://8.8.8.8/(home|sub|my|app|log\/),script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/chavy.box.js,requires-body=true,max-size=0,script-update-interval=0 -# > 有道云笔记 vip -// 有道破解 = requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/Alex0510/Eric/master/surge/Script/ydybj.js,type=http-response,pattern=https://note.youdao.com/yws/(mapi/payment|api/self) -# > 网易蜗牛读书 vip -// 蜗牛读书 = requires-body=1,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/QuantumultX/File/wnyd.js,type=http-response,pattern=^https?:\/\/p\.du\.163\.com\/gain\/readtime\/info\.json -# > 彩云天气定位 -天气定位 = require-body=false,script-path=https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/caiyun.js,type=http-request, pattern=https://weather-data.apple.com - -[MITM] -hostname = %INSERT% mp.weixin.qq.com, *.googlevideo.com, api.m.jd.com, trade-acs.m.taobao.com, education.github.com, api.rr.tv, account.wps.cn, ap*.intsig.net, dayone.me, license.pdfexpert.com, app.flashdown365.com, api.flexibits.com, api.gyrosco.pe, ios.prod.ftl.netflix.com, biz.caiyunapp.com, *.musical.ly, *.tiktokv.com, *.byteoversea.com, *.snssdk.com, api.weibo.cn, mapi.weibo.com, *.uve.weibo.com, *.xiaoxiaoimg.com,*.xiaoxiaoapps.com,*.xiaoxiaoappxs.co, ios.fuliapps.com, apple.fuliapps.com, ios.xiangjiaoapps.com, apple.xiangjiaoapps.com, *.xiangxiangapps.com, *.lagoapps.com, bkcd.b-cdn.net, souhu.mett.me, ayk.tmdidi.com, m.pearkin.com, www.baidu.com2.club, api.meiyan.com, raw.githubusercontent.com, gist.githubusercontent.com, 8.8.8.8, note.youdao.com, p.du.163.com, app.bilibili.com, weather-data.apple.com \ No newline at end of file diff --git a/Surge/SurgePro.conf b/Surge/SurgePro.conf deleted file mode 100644 index 397a7240..00000000 --- a/Surge/SurgePro.conf +++ /dev/null @@ -1,79 +0,0 @@ -[General] -bypass-system = true -loglevel = notify -replica = false -dns-server = system, 119.29.29.29, 119.28.28.28, 1.2.4.8 -skip-proxy = 127.0.0.1, 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12, 100.64.0.0/10, 17.0.0.0/8, localhost, *.local, *.crashlytics.com -tun-excluded-routes = 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12 -tun-included-routes = 192.168.1.12/32 -always-real-ip = *.srv.nintendo.net, *.stun.playstation.net, xbox.*.microsoft.com, *.xboxlive.com -hijack-dns = 8.8.8.8:53, 8.8.4.4:53 -http-listen = 0.0.0.0:8888 -socks5-listen = 0.0.0.0:8889 -wifi-access-http-port = 6152 -wifi-access-socks5-port = 6153 -internet-test-url = http://www.aliyun.com -proxy-test-url = http://cp.cloudflare.com/generate_204 -test-timeout = 5 -allow-wifi-access = true -exclude-simple-hostnames = true -ipv6 = true -network-framework = false -show-error-page-for-reject = true -tls-provider = default -use-default-policy-if-wifi-not-primary = false -wifi-assist = true - -[Replica] -hide-apple-request = true -hide-crashlytics-request = true -hide-udp = false -keyword-filter-type = false - -[Proxy] -𝙍𝙀𝙅𝙀𝘾𝙏-𝙏𝙄𝙉𝙔𝙂𝙄𝙁 = reject-tinygif -𝙍𝙀𝙅𝙀𝘾𝙏 = reject -𝘿𝙄𝙍𝙀𝘾𝙏 = direct - -[Proxy Group] -𝙋𝙍𝙊𝙓𝙔 = select, 𝘿𝙡𝙚𝙧𝘾𝙡𝙤𝙪𝙙 𝙄𝙋𝙇𝘾, 𝘿𝙡𝙚𝙧𝘾𝙡𝙤𝙪𝙙 𝘽𝙂𝙋 -𝘿𝙡𝙚𝙧𝘾𝙡𝙤𝙪𝙙 𝙄𝙋𝙇𝘾 = url-test, policy-regex-filter=(标准).*IPLC, url=http://www.gstatic.com/generate_204, policy-path=机场订阅, update-interval=43200, timeout=0, interval=600, tolerance=50 -𝘿𝙡𝙚𝙧𝘾𝙡𝙤𝙪𝙙 𝘽𝙂𝙋 = select, policy-path=机场订阅, policy-regex-filter=(高级).*BGP, update-interval=43200 -𝙔𝙤𝙪𝙏𝙪𝙗𝙚 = select, 𝘿𝙄𝙍𝙀𝘾𝙏, 𝙋𝙍𝙊𝙓𝙔 -𝙉𝙚𝙩𝙛𝙡𝙞𝙭 = select, 𝘿𝙄𝙍𝙀𝘾𝙏, 𝙋𝙍𝙊𝙓𝙔 -𝙏𝙚𝙡𝙚𝙜𝙧𝙖𝙢 = select, 𝘿𝙄𝙍𝙀𝘾𝙏, 𝙋𝙍𝙊𝙓𝙔 -𝘼𝘿 𝘽𝙡𝙤𝙘𝙠 = select, 𝘿𝙄𝙍𝙀𝘾𝙏, 𝙍𝙀𝙅𝙀𝘾𝙏, 𝙍𝙀𝙅𝙀𝘾𝙏-𝙏𝙄𝙉𝙔𝙂𝙄𝙁 -𝘽𝙡𝙤𝙘𝙠 𝙊𝙏𝘼 = select, 𝘿𝙄𝙍𝙀𝘾𝙏, 𝙍𝙀𝙅𝙀𝘾𝙏 -𝙎𝙥𝙚𝙚𝙙𝙩𝙚𝙨𝙩 = select, 𝘿𝙄𝙍𝙀𝘾𝙏, 𝙋𝙍𝙊𝙓𝙔 -𝘼𝙥𝙥𝙡𝙚 = select, 𝘿𝙄𝙍𝙀𝘾𝙏, 𝙋𝙍𝙊𝙓𝙔 -𝙋𝙖𝙮𝙋𝙖𝙡 = select, 𝘿𝙄𝙍𝙀𝘾𝙏, 𝙋𝙍𝙊𝙓𝙔 - -[Rule] -DOMAIN,rsshub.app,𝙋𝙍𝙊𝙓𝙔 -DOMAIN,dleris.best,𝘿𝙡𝙚𝙧𝘾𝙡𝙤𝙪𝙙 𝘽𝙂𝙋 -DOMAIN,chat.dler.io,𝘿𝙡𝙚𝙧𝘾𝙡𝙤𝙪𝙙 𝘽𝙂𝙋 -DOMAIN,dlercloud.com,𝘿𝙡𝙚𝙧𝘾𝙡𝙤𝙪𝙙 𝘽𝙂𝙋 -URL-REGEX,^https:\/\/dayone\.me,𝙋𝙍𝙊𝙓𝙔 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Liby.list,𝘼𝘿 𝘽𝙡𝙤𝙘𝙠 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Tide.list,𝘼𝘿 𝘽𝙡𝙤𝙘𝙠 -RULE-SET,https://raw.githubusercontent.com/nzw9314/Surge/master/Ruleset/BlockOTA.list,𝘽𝙡𝙤𝙘𝙠 𝙊𝙏𝘼 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Sub/PayPal.list,𝙋𝙖𝙮𝙋𝙖𝙡 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Sub/YouTube.list,𝙔𝙤𝙪𝙏𝙪𝙗𝙚 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Sub/Netflix.list,𝙉𝙚𝙩𝙛𝙡𝙞𝙭 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Sub/Pornhub.list,𝙋𝙍𝙊𝙓𝙔 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Sub/Telegram.list,𝙏𝙚𝙡𝙚𝙜𝙧𝙖𝙢 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Sub/Speedtest.list,𝙎𝙥𝙚𝙚𝙙𝙩𝙚𝙨𝙩 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Apple_API.list,𝘼𝙥𝙥𝙡𝙚 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Apple_CDN.list,𝘿𝙄𝙍𝙀𝘾𝙏 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/GlobalMedia.list,𝙋𝙍𝙊𝙓𝙔 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Global.list,𝙋𝙍𝙊𝙓𝙔 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/AsianMedia.list,𝘿𝙄𝙍𝙀𝘾𝙏 -RULE-SET,https://raw.githubusercontent.com/eHpo1/Rules/master/Surge4/Ruleset/Domestic.list,𝘿𝙄𝙍𝙀𝘾𝙏 -DOMAIN,ocsp.apple.com,𝙍𝙀𝙅𝙀𝘾𝙏 -RULE-SET,LAN,𝘿𝙄𝙍𝙀𝘾𝙏 -GEOIP,CN,𝘿𝙄𝙍𝙀𝘾𝙏 -FINAL,𝙋𝙍𝙊𝙓𝙔,dns-failed - -[MITM] -ca-passphrase = 52E176D8 -ca-p12 = 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 diff --git a/Surge/Task.sgmodule b/Surge/Task.sgmodule deleted file mode 100644 index 5886c9ff..00000000 --- a/Surge/Task.sgmodule +++ /dev/null @@ -1,81 +0,0 @@ -#!name=𝙏𝙖𝙨𝙠 -#!desc=Task定时 • 签到脚本、无主机名; -#!system=ios - -[Script] -# > 多账号切换 -// 切换会话 = type=cron,cronexp="0 12 * * *",wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/box/switcher/box.switcher.js,script-update-interval=0 -# > 京东多合一签到 -京东商城 = type=cron,cronexp="0,30 0 0 * * *",wake-system=1,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/JD-DailyBonus/JD_DailyBonus.js,script-update-interval=0 -# > 饿了么 签到、打卡 -饿了签到 = type=cron,cronexp=0 1 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/songyangzz/QuantumultX/master/elem/elemSign.js,script-update-interval=0 -饿了打卡 = type=cron,cronexp=30 1 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/zZPiglet/Task/master/elem/elemCheckIn.js,script-update-interval=0 -# > 去哪儿 -去哪签到 = type=cron,cronexp=0 2 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/qunar/qunar.js,script-update-interval=0 -# > 人人字幕组 -人人字幕 = type=cron,cronexp=30 2 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/zimuzu/zimuzu.js,script-update-interval=0 -# > 人人视频 -人人视频 = type=cron,cronexp=0 3 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/rrtv/rrtv.js,script-update-interval=0 -# > 喜马拉雅 -喜马拉雅 = type=cron,cronexp=30 3 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/ximalaya/ximalaya.js,script-update-interval=0 -# > 美团 -美团签到 = type=cron,cronexp=0 4 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/meituan/meituan.js,script-update-interval=0 -# > 网易云音乐 -网易音乐 = type=cron,cronexp=30 4 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/neteasemusic/neteasemusic.js,script-update-interval=0 -# > 京东到家 -京东到家 = type=cron,cronexp=0 5 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/Sunert/Scripts/master/Task/jddj.js,script-update-interval=0 -# > 新浪微博 -新浪微博 = type=cron,cronexp=30 5 5 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/Sunert/Scripts/master/Task/weibo.js,script-update-interval=0 -# > 顺丰速运 -顺丰速运 = type=cron,cronexp=0 6 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/sfexpress/sfexpress.js,script-update-interval=0 -# > 苏宁易购 -苏宁易购 = type=cron,cronexp=30 6 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/suning/suning.js,script-update-interval=0 -# > 吾爱破解 -吾爱破解 = type=cron,cronexp=0 7 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/52pojie-DailyBonus/52pojie.js,script-update-interval=0 -# > 网易新闻 -网易新闻 = type=cron,cronexp=30 7 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/neteasenews/neteasenews.js,script-update-interval=0 -# > 滴滴出行 -滴滴出行 = type=cron,cronexp=0 8 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/zZPiglet/Task/master/DiDi/DiDi.js,script-update-interval=0 -# > bilibili 哔哩哔哩 -哔哩哔哩 = type=cron,cronexp=30 8 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/bilibili/bilibili.js,script-update-interval=0 -# > 115云盘 -1 1 5 云盘 = type=cron,cronexp=0 9 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/zZPiglet/Task/master/115/115.js,script-update-interval=0 -# > 中国电信 -电信签到 = type=cron,cronexp= 30 9 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/10000/10000.js,script-update-interval=0 -# > 中国移动 -移动签到 = type=cron,cronexp=0 10 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.js,script-update-interval=0 -# > 百度贴吧 -百度贴吧 = type=cron,cronexp=30 10 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/tieba/tieba.js,timeout=60,script-update-interval=0 -# > 万达电影 -万达电影 = type=cron,cronexp=0 11 0 * * *,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/wanda/wanda.js,wake-system=1,script-update-interval=0 -# > 威锋论坛 -威锋论坛 = type=cron,cronexp=30 11 0 * * *,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/feng/feng.js,wake-system=1,script-update-interval=0 -# > 可林商城 -可林商城 = type=cron,cronexp=0 12 0 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/zZPiglet/Task/master/Oclean/Oclean_mini.js,script-update-interval=0 -# > GitHub监控 -GitHub库 = type=cron,cronexp="0 5 0/1 * * *",wake-system=1,script-path=https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/github.js,script-update-interval=0 -# > 金山WPS -金山WPS = type=cron,cronexp=0 2 8 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/wps/wps.js,script-update-interval=0 -# > 中国移动 余量 -移动余量 = type=cron,cronexp=0 0 9 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/chavyleung/scripts/master/10086/10086.fee.js,wake-system=true,script-update-interval=0 -# > 中国电信 余量 -电信余量 = type=cron,cronexp= 0 2 9 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/Sunert/Scripts/master/Task/telecomInfinity.js,script-update-interval=0 -# > 天气预报-益阳市 -天气预报 = type=cron,cronexp="0 1 8,18 * * *",wake-system=1,script-path=https://raw.githubusercontent.com/githubdulong/Script/mutu/weather_pro2.js,script-update-interval=0 -# > 彩云天气 -彩云天气 = type=cron,cronexp="0 1 8-20/1 * * *",wake-system=1,script-path=https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/caiyun.js, script-update-interval=0 -# > 降雨提醒 -//降雨提醒= type=cron,cronexp="0 2 8-20/4 * * *",wake-system=1,script-path=https://raw.githubusercontent.com/toulanboy/scripts/master/weather/weather.js, script-update-interval=0 -# > Dler Cloud 墙洞机场 -墙洞机场 = type=cron,cronexp="0 0 8-22/2 * * *",wake-system=1,script-path=https://raw.githubusercontent.com/githubdulong/Script/master/dlercloud.js,use-local-host-item-for-proxy = true -# > 电视节目预告 -电视预告 = type=cron,cronexp=0 5 9 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/Sunert/Scripts/master/Task/tvpreview.js, script-update-interval=0 -# > 实时汇率 -//实时汇率 = type=cron,cronexp=50 0 9 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/exchange.js,script-update-interval=0 -# > Epic游戏限免 -游戏限免 = type=cron,cronexp=0 8 10 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/epic.js,script-update-interval=0 -# > 疫情报告 -疫情报告 = type=cron,cronexp=0 8 9 * * *,wake-system=1,script-path=https://raw.githubusercontent.com/Peng-YM/QuanX/master/Tasks/nCov.js,script-update-interval=0 - --------- 分 - 割 - 线 -------- = type=http-request,pattern=分割线,script-path=Script/分割线.js - diff --git a/dlercloud.js b/dlercloud.js deleted file mode 100644 index f8919b27..00000000 --- a/dlercloud.js +++ /dev/null @@ -1,235 +0,0 @@ -/* -Dler Cloud 签到脚本 转自TG大佬 - -https://raw.githubusercontent.com/githubdulong/Script/master/dlercloud.js - -说明:登录 https://dleris.best/ 获取 cookie,cookie有效期为 31 天,失效后需重新获取 - -QX 1.0.5+ : -[rewrite_local] -^https:\/\/dleris\.best\/user url script-request-header https://raw.githubusercontent.com/githubdulong/Script/master/dlercloud.js - -[task_local] -0/60 * * * * https://raw.githubusercontent.com/githubdulong/Script/master/dlercloud.js - -[mitm] -hostname = dleris.best - - -Surge 4.0 : -[Script] -http-request ^https:\/\/dleris\.best\/user script-path= https://raw.githubusercontent.com/githubdulong/Script/master/dlercloud.js -cron "0/60 * * * *" script-path= https://raw.githubusercontent.com/githubdulong/Script/master/dlercloud.js - -[MITM] -hostname = dleris.best -*/ - -const $util = init() -const title = 'Dler Cloud墙洞机场' -const cookieName = 'DlerCloud' -const totalKey = 'DlerCloudTotal' -const url = 'https://dleris.best' - -const checkinResult = { - msg: undefined, - used: undefined, - rest: undefined, - total: undefined, -} - -if ($util.isRequest) { - getCookie() -} else { - ;(async () => { - let cookie = $util.read(cookieName) - if (cookie == undefined || cookie == "0" || cookie == null) { - console.log(`${title} 未获取Cookie!\n`) - $util.notify(title, "未获取Cookie⚠️", "请先获取Cookie") - } - await checkin(cookie) - await getDataTraffic(cookie) - })().then(() => { - let result = totalCalculation(checkinResult.total) - let msg = `已用流量:${checkinResult.used}\n剩余流量:${checkinResult.rest}\n累计收益:${result}B` - console.log(`${title}\n${checkinResult.msg}\n${msg}\n`) - $util.notify(title, checkinResult.msg, msg) - }) -} -$util.done() - -function getCookie() { - if ($request.headers) { - let cookieValue = $request.headers['Cookie'] - if ($util.read(cookieName) != (undefined || null)) { - if ($util.read(cookieName) != cookieValue) { - if (!$util.write(cookieValue, cookieName)) { - $util.notify(`更新 ${cookieName} Cookie 失败‼️`, '', '') - } else { - $util.notify(`更新 ${cookieName} Cookie 成功 🎉`, '', '') - } - } - } else { - if (!$util.write(cookieValue, cookieName)) { - $util.notify(`首次写入 ${cookieName} Cookie 失败‼️`, '', '') - } else { - $util.notify(`首次写入 ${cookieName} Cookie 成功 🎉`, '', '') - } - } - } else { - $util.notify(`写入 ${cookieName} Cookie 失败‼️`, '', '无法读取请求头') - } -} - -function getDataTraffic(cookie) { - return new Promise((resolve, reject) => { - let options = { - url: `${url}/user`, - headers: { - Cookie: cookie, - }, - } - $util.get(options, (error, response, data) => { - let matcher = data.replace(/\n/g, '').match(/>可用:(.*?)<.*>已用:(.*?) { - let options = { - url: `${url}/user/checkin`, - headers: { - Cookie: cookie, - }, - } - $util.post(options, (error, response, data) => { - if (!data) { - $util.notify(`${title} 签到失败‼️`, `${error}`, '详情请见日志⚠️') - console.log('签到请求失败\n') - console.log(`error: ${error}\n`) - console.log(`statusCode:${response.status}\n`) - } - if (!data.match(/"ret":/)) { - console.log('签到失败,cookie已失效\n') - console.log(`statusCode:${response.status}\n`) - $util.notify(`${title} 签到失败‼️`, "Cookie已失效⚠️", "请重新获取Cookie") - } - obj = JSON.parse(data) - checkinResult.total = updateTotal(obj.msg) - checkinResult.msg = obj.msg - resolve('done') - }) - }) -} - -function updateTotal(checkinMsg) { - let total = $util.read(totalKey) - if (total != (undefined || null)) { - total = parseFloat(total) - } else { - total = 0.0 - } - - if (checkinMsg) { - let matcher = checkinMsg.match(/(增加|减少)[^.\d]*(([1-9]\d*|0)(\.\d+)?)[^.\d]*/) - if (matcher && matcher.length >= 3) { - if (matcher[1] === '增加') { - total += parseFloat(matcher[2]) - } else if (matcher[1] === '减少') { - total -= parseFloat(matcher[2]) - } - } - $util.write(`${total}`, totalKey) - } - - return total -} - -function totalCalculation(totalFlow) { - let absoluteValue = totalFlow - if (totalFlow < 0) { - absoluteValue = -totalFlow - } - let flow = '0M' - if (absoluteValue >= 1 * 1024 && absoluteValue < 1 * 1024 * 1024) { - absoluteValue = Math.floor(1.0 * absoluteValue / 1024 * 100) / 100 - flow = absoluteValue + 'G' - } else if (absoluteValue >= 1 * 1024 * 1024 && absoluteValue < 1 * 1024 * 1024 * 1024) { - absoluteValue = Math.floor(1.0 * absoluteValue / 1024 / 1024 * 100) / 100 - flow = absoluteValue + 'T' - } else if (absoluteValue >= 1 * 1024 * 1024 * 1024 && absoluteValue < 1 * 1024 * 1024 * 1024 * 1024) { - absoluteValue = Math.floor(1.0 * absoluteValue / 1024 / 1024 / 1024 * 100) / 100 - flow = absoluteValue + 'P' - } else { - flow = absoluteValue + 'M' - } - if (totalFlow < 0) { - flow = '-' + flow - } - return flow -} - -/** - * 该兼容方法来自 @nobyda https://github.com/NobyDa/Script - */ -function init() { - const isRequest = typeof $request != 'undefined' - const isSurge = typeof $httpClient != 'undefined' - const isQuanX = typeof $task != 'undefined' - const notify = (title, subtitle, message) => { - if (isQuanX) $notify(title, subtitle, message) - if (isSurge) $notification.post(title, subtitle, message) - } - const write = (value, key) => { - if (isQuanX) return $prefs.setValueForKey(value, key) - if (isSurge) return $persistentStore.write(value, key) - } - const read = key => { - if (isQuanX) return $prefs.valueForKey(key) - if (isSurge) return $persistentStore.read(key) - } - const get = (options, callback) => { - if (isQuanX) { - if (typeof options == 'string') options = { url: options } - options['method'] = 'GET' - return $task.fetch(options).then( - response => { - response['status'] = response.statusCode - callback(null, response, response.body) - }, - reason => callback(reason.error, null, null) - ) - } - if (isSurge) return $httpClient.get(options, callback) - } - const post = (options, callback) => { - if (isQuanX) { - if (typeof options == 'string') options = { url: options } - options['method'] = 'POST' - $task.fetch(options).then( - response => { - response['status'] = response.statusCode - callback(null, response, response.body) - }, - reason => callback(reason.error, null, null) - ) - } - if (isSurge) $httpClient.post(options, callback) - } - const done = (value = {}) => { - if (isQuanX) isRequest ? $done(value) : '' - if (isSurge) isRequest ? $done(value) : $done() - } - return { isRequest, isQuanX, isSurge, notify, write, read, get, post, done } -} diff --git a/weather_pro.js b/weather_pro.js deleted file mode 100644 index 15c93cec..00000000 --- a/weather_pro.js +++ /dev/null @@ -1,1167 +0,0 @@ -/* -可以自由定制显示的天气脚本,想怎样都随你,轻松修改轻松查看 -https://github.com/sazs34/TaskConfig/blob/master/assets/weather_pro.md - */ -let config = { - darksky_api: "填这里", //从https://darksky.net/dev/ 上申请key填入即可 - aqicn_api: "填这里", //从http://aqicn.org/data-platform/token/#/ 上申请key填入即可 - huweather_apiKey: "填这里", //和风天气APIkey,可自行前往 https://dev.heweather.com/ 进行获取(注意key类型选WebApi) - lat_lon: "经度,纬度", //请填写经纬度,直接从谷歌地图中获取即可 - lang: "zh", //语言,随意切换为您想要的语言哦(zh/zh-tw/ja/en/fr/...) - log: 0, //调试日志,0为不开启,1为开启,2为开启精简日志 - timeout: 0, //超时时间,单位毫秒(1000毫秒=1秒),一般不推荐修改[为0则不限制超时时间] - show: { - //普通每天的 - template: { - title: `[天气日报] $[city]$[district] • $[summary]`, - subtitle: `$[weatherIcon]$[weather] $[temperatureMin] ~ $[temperatureMax]°C ☔️降雨概率 $[precipProbability]%`, - detail: `🥵空气质量 $[aqi]($[aqiDesc]) 🍃风速$[windSpeed]km/h $[windDir] -🌞紫外线指数 $[uv]($[uvDesc]) 💧湿度$[currentHumidity]% -🌡体感温度 $[apparentTemperatureMin] ~ $[apparentTemperatureMax]°C 💨气压$[atmosphere]pa - -[生活指数] -$[lifeStyle($[icon][$[brf]]$[txt])] - -[天气周报] • $[weeklySummary] -$[daily($[month]月$[day]日 $[temperatureLow]~$[temperatureHigh]°C $[weatherIcon]$[weather])]` - }, - lifestyle: { //此处用于显示各项生活指数,可自行调整顺序,顺序越在前面则显示也会靠前,如果您不想查看某一指数,置为false即可,想看置为true即可 - drsg: true, //穿衣指数, - flu: true, //感冒指数, - comf: true, //舒适度指数, - cw: true, //洗车指数, - sport: false, //运动指数, - trav: false, //旅游指数, - uv: false, //紫外线指数, - air: false, //空气污染扩散条件指数, - ac: false, //空调开启指数, - ag: false, //过敏指数, - gl: false, //太阳镜指数, - mu: false, //化妆指数, - airc: false, //晾晒指数, - ptfc: false, //交通指数, - fsh: false, //钓鱼指数, - spi: false, //防晒指数 - } - } -} - -const provider = { - heweather_now: { - api: `https://free-api.heweather.net/s6/weather/now?location=${config.lat_lon.replace(/\s/g, "").replace(",", ",")}&key=${config.huweather_apiKey}`, - progress: 0, //处理进度:0需处理1已处理2无需处理9报错 - timeoutNumber: 0, //超时处理编号 - data: { - basic: {}, - now: {} - }, - support: ['$[province]', '$[city]', '$[district]', '$[weatherIcon]', '$[weather]', '$[currentTemperature]', '$[currentWindSpeed]', '$[currentWindDir]', '$[currentWindPower]', '$[currentHumidity]', '$[currentAtmosphere]', '$[currentVisibility]'] - }, - heweather_daily: { - api: `https://free-api.heweather.net/s6/weather/forecast?location=${config.lat_lon.replace(/\s/g, "").replace(",", ",")}&key=${config.huweather_apiKey}`, - progress: 0, - timeoutNumber: 0, - data: {}, - support: ['$[temperatureMin]', '$[temperatureMax]', '$[precipProbability]', '$[windSpeed]', '$[windDir]', '$[windPower]', '$[humidity]', '$[atmosphere]', '$[visibility]', '$[uv]', '$[uvDesc]', '$[sunrise]', '$[sunset]', '$[moonrise]', '$[moonset]'] - }, - heweather_air: { - api: `https://free-api.heweather.net/s6/air/now?location=auto_ip&key=${config.huweather_apiKey}`, - progress: 0, - timeoutNumber: 0, - data: {}, - support: [] - }, - heweather_lifestyle: { - api: `https://free-api.heweather.net/s6/weather/lifestyle?location=${config.lat_lon.replace(/\s/g, "").replace(",", ",")}&key=${config.huweather_apiKey}`, - progress: 0, - timeoutNumber: 0, - data: [], - support: ['$[lifeStyle]'] - }, - darksky: { - api: `https://api.darksky.net/forecast/${config.darksky_api}/${config.lat_lon.replace(/\s/g, "").replace(",", ",")}?lang=${config.lang}&units=si`, - progress: 0, - timeoutNumber: 0, - data: { - daily: { - data: [] - }, - hourly: { - data: [] - }, - currently: {} - }, - support: ['$[summary]', '$[weeklySummary]', '$[weatherIcon]', '$[weather]', '$[temperatureMin]', '$[temperatureMax]', '$[apparentTemperatureMin]', '$[apparentTemperatureMax]', '$[precipProbability]', '$[uv]', '$[uvDesc]'] - }, - aqicn: { - api: `https://api.waqi.info/feed/geo:${config.lat_lon.replace(/\s/g, "").replace(",", ",").replace(/,/, ";")}/?token=${config.aqicn_api}`, - progress: 0, - data: {}, - support: ['$[aqiIcon]', '$[aqi]', '$[aqiDesc]', '$[aqiWarning]'] - } -} - -$tool = Tool() -$tool.log.level("error") -weather() - -$tool.done() - -// #region 天气数据获取 -function weather() { - support(); - heweatherNow(); - heweatherDaily(); - darksky(); - aqicn(); - heweatherLifestyle(); -} -//clear-day, partly-cloudy-day, cloudy, clear-night, rain, snow, sleet, wind, fog, or partly-cloudy-night -//☀️🌤⛅️🌥☁️🌦🌧⛈🌩🌨❄️💧💦🌫☔️☂️ ☃️⛄️ -function darksky() { - if (provider.darksky.progress == 2) return; - start("darksky"); - $tool.get({url: provider.darksky.api}, function (error, response, body) { - if (!error) { - try { - let darkObj = JSON.parse(body); - $tool.log.debug(`天气数据获取-A1-${body}`); - if (darkObj.error) { - $tool.notify("DarkApi", "出错啦", darkObj.error); - } - provider.darksky.data.daily = darkObj.daily; - provider.darksky.data.hourly = darkObj.hourly; - provider.darksky.data.currently = darkObj.currently; - $tool.log.debug(`天气数据获取-A2`); - check('darksky', true) - } catch (e) { - $tool.log.error(`天气数据A获取报错${JSON.stringify(e)}`) - } - } else { - $tool.log.error(`天气数据获取-A3-${reason.error}`); - check('darksky', false); - } - - }) -} - -function aqicn() { - if (provider.aqicn.progress == 2) return; - start("aqicn"); - $tool.get({url: provider.aqicn.api}, function (error, response, body) { - if (!error) { - try { - var waqiObj = JSON.parse(body); - if (waqiObj.status == 'error') { - $tool.notify("Aqicn", "出错啦", waqiObj.data); - } else { - $tool.log.debug(`天气数据获取-B1-${body}`); - provider.aqicn.data = { - ...getAqiInfo(waqiObj.data.aqi) - }; - } - check('aqicn', true) - } catch (e) { - $tool.log.error(`天气数据B获取报错${JSON.stringify(e)}`) - } - } else { - $tool.log.error(`天气数据获取-B2-${reason.error}`); - //获取精确数据失败后,直接获取粗略信息即可 - heweatherAir(); - } - }) -} - -function heweatherNow() { - start("heweather_now"); - $tool.get({url: provider.heweather_now.api}, function (error, response, body) { - if (!error) { - try { - $tool.log.debug(`天气数据获取-C1-${body}`); - var heObj = JSON.parse(body); - provider.heweather_now.data.basic = heObj.HeWeather6[0].basic; - provider.heweather_now.data.now = heObj.HeWeather6[0].now; - check('heweather_now', true) - } catch (e) { - $tool.log.error(`天气数据C获取报错${JSON.stringify(e)}`) - } - } else { - $tool.log.error(`天气数据获取-C2-${reason.error}`); - //因为此接口出错率还挺高的,所以即使报错我们也不处理,该返回什么就返回什么好了 - check('heweather_now', false) - } - }) -} - -function heweatherDaily() { - if (provider.heweather_daily.progress == 2) return; - start("heweather_daily"); - $tool.get({url: provider.heweather_daily.api}, function (error, response, body) { - if (!error) { - try { - $tool.log.debug(`天气数据获取-D1-${body}`); - var heObj = JSON.parse(body); - provider.heweather_daily.data = heObj.HeWeather6[0].daily_forecast[0]; - check('heweather_daily', true) - } catch (e) { - $tool.log.error(`天气数据D获取报错${JSON.stringify(e)}`) - } - } else { - $tool.log.error(`天气数据获取-D2-${reason.error}`); - //因为此接口出错率还挺高的,所以即使报错我们也不处理,该返回什么就返回什么好了 - check('heweather_daily', false) - } - }) -} - -function heweatherAir() { - if (provider.heweather_air.progress == 2) return; - start("heweather_air"); - $tool.get({url: provider.heweather_air.api}, function (error, response, body) { - if (!error) { - try { - $tool.log.debug(`天气数据获取F1-${body}`); - var heObj = JSON.parse(body); - provider.heweather_air.data = { - ...getAqiInfo(heObj.HeWeather6[0].air_now_city.aqi) - }; - check('heweather_air', true) - } catch (e) { - $tool.log.error(`天气数据F获取报错${JSON.stringify(e)}`) - } - } else { - $tool.log.error(`天气数据获取-F2-${reason.error}`); - //因为此接口出错率还挺高的,所以即使报错我们也不处理,该返回什么就返回什么好了 - check('heweather_air', false) - } - }) -} - -function heweatherLifestyle() { - if (provider.heweather_lifestyle.progress == 2) return; - start("heweather_lifestyle"); - var needRequest = false; - //判断一下是否全部都是false,全false的话,则不需要请求此接口直接返回渲染的数据了 - for (var item in config.show.lifestyle) { - if (config.show.lifestyle[item]) { - needRequest = true; - break; - } - } - if (needRequest) { - $tool.get({url: provider.heweather_lifestyle.api}, function (error, response, body) { - if (!error) { - try { - $tool.log.debug(`天气数据获取-E1-${body}`); - var heObj = JSON.parse(body); - provider.heweather_lifestyle.data = heObj.HeWeather6[0].lifestyle; - check('heweather_lifestyle', true) - } catch (e) { - $tool.log.error(`天气数据E获取报错${JSON.stringify(e)}`) - } - } else { - $tool.log.error(`天气数据获取-E2-${reason.error}`); - //因为此接口出错率还挺高的,所以即使报错我们也不处理,该返回什么就返回什么好了 - check('heweather_lifestyle', false) - } - }) - } else { - check('heweather_lifestyle', false) - } -} -//#endregion - -// #region 提醒数据组装 -function check(type, result) { - $tool.log.debug(`check-${type}-${result}`); - try { - //支持setTimeout居然不支持clearTimeout,有点难受 - if (provider[type].progress == 1 || provider[type].progress == 9) return; - provider[type].progress = result ? 1 : 9; - var isAllChecked = provider.heweather_now.progress != 0 && provider.heweather_daily.progress != 0 && provider.darksky.progress != 0 && (provider.aqicn.progress != 0 || provider.heweather_air.progress != 0) && provider.heweather_lifestyle.progress != 0; - // var isAllChecked = true - if (isAllChecked) { - $tool.log.debug(`天气数据渲染中[template]`); - try { - renderTemplate(); - } catch (e) { - $tool.log.error(`天气渲染出错-${JSON.stringify(e)}`); - } - } - } catch (lineerror) { - $tool.log.error(`check error: ${lineerror}`) - } -} - -var lineBreak = ` -`; - -function renderTemplate() { - execArrayTemplate(); - const map = { - //省 - province: provider.heweather_now.data.basic.admin_area, - //市 - city: provider.heweather_now.data.basic.parent_city, - //区 - district: provider.heweather_now.data.basic.location || "UNKNOW", - //全天气候变化概述 - summary: `${provider.darksky.data.hourly.summary||""}`, - //一周气候变化概述 - weeklySummary: `${provider.darksky.data.daily.summary||""}`, - //天气图标 - weatherIcon: `${getHeweatherIcon(provider.heweather_now.data.now.cond_code)||getDarkskyWeatherIcon(provider.darksky.data.hourly.icon)}`, - //天气描述(晴/雨/雪等) - weather: `${provider.heweather_now.data.now.cond_txt||getDarkskyWeatherDesc(provider.darksky.data.hourly.icon)}`, - //当前温度 - currentTemperature: `${provider.heweather_now.data.now.tmp}`, - //温度最低值 - temperatureMin: `${Math.round(provider.heweather_daily.data.tmp_min||provider.darksky.data.daily.data.get(0).temperatureMin)}`, - //温度最高值 - temperatureMax: `${Math.round(provider.heweather_daily.data.tmp_max||provider.darksky.data.daily.data.get(0).temperatureMax)}`, - //体感温度最低值 - apparentTemperatureMin: `${Math.round(provider.darksky.data.daily.data.get(0).apparentTemperatureLow)}`, - //体感温度最高值 - apparentTemperatureMax: `${Math.round(provider.darksky.data.daily.data.get(0).apparentTemperatureHigh)}`, - //降雨概率 - precipProbability: `${provider.heweather_daily.data.pop||(Number(provider.darksky.data.daily.data.get(0).precipProbability) * 100).toFixed(0)}`, - //空气质量图标 - aqiIcon: `${provider.aqicn.data.aqiIcon||provider.heweather_air.data.aqiIcon}`, - //空气质量 - aqi: `${provider.aqicn.data.aqi||provider.heweather_air.data.aqi}`, - //空气质量描述 - aqiDesc: `${provider.aqicn.data.aqiDesc||provider.heweather_air.data.aqiDesc}`, - //空气质量警告(提示) - aqiWarning: `${provider.aqicn.data.aqiWarning||provider.heweather_air.data.aqiWarning}`, - //全天风速 - windSpeed: `${provider.heweather_daily.data.wind_spd}`, - //当前风速 - currentWindSpeed: `${provider.heweather_now.data.now.wind_spd}`, - //全天风向 - windDir: `${provider.heweather_daily.data.wind_dir}`, - //当前风向 - currentWindDir: `${provider.heweather_now.data.now.wind_dir}`, - //全天风力 - windPower: `${provider.heweather_daily.data.wind_sc}`, - //当前风力 - currentWindPower: `${provider.heweather_now.data.now.wind_sc}`, - //全天相对湿度 - humidity: `${provider.heweather_daily.data.hum}`, - //当前相对湿度 - currentHumidity: `${provider.heweather_now.data.now.hum}`, - //全天大气压 - atmosphere: `${provider.heweather_daily.data.pres}`, - //当前大气压 - currentAtmosphere: `${provider.heweather_now.data.now.pres}`, - //全天能见度 - visibility: `${provider.heweather_daily.data.vis}`, - //当前能见度 - currentVisibility: `${provider.heweather_now.data.now.vis}`, - //紫外线等级 - uv: `${provider.heweather_daily.data.uv_index||provider.darksky.data.daily.data.get(0).uvIndex}`, - //紫外线描述 - uvDesc: `${getUVDesc(provider.heweather_daily.data.uv_index||provider.darksky.data.daily.data.get(0).uvIndex)}`, - //日出时间 - sunrise: `${provider.heweather_daily.data.sr}`, - //日落时间 - sunset: `${provider.heweather_daily.data.ss}`, - //月出时间 - moonrise: `${provider.heweather_daily.data.mr}`, - //月落时间 - moonset: `${provider.heweather_daily.data.ms}`, - } - var notifyInfo = { - title: execTemplate(config.show.template.title, map), - subtitle: execTemplate(config.show.template.subtitle, map), - detail: execTemplate(config.show.template.detail, map), - }; - $tool.notify(notifyInfo.title, notifyInfo.subtitle, notifyInfo.detail); -} -// #endregion - -// #region 数据处理方法 -function getHeweatherIcon(code) { - var codeMap = { - _100: '☀️', - _101: '☁️', - _102: '☁️', - _103: '⛅️', - _104: '☁️', - _200: '💨', - _201: '🌬', - _202: '🌬', - _203: '🌬', - _204: '🌬', - _205: '🌬', - _206: '💨', - _207: '💨', - _208: '💨', - _209: '🌪', - _210: '🌪', - _211: '🌪', - _212: '🌪', - _213: '🌪', - _300: '🌨', - _301: '🌨', - _302: '⛈', - _303: '⛈', - _304: '⛈', - _305: '💧', - _306: '💦', - _307: '🌧', - _308: '🌧', - _309: '☔️', - _310: '🌧', - _311: '🌧', - _312: '🌧', - _313: '🌧❄️', - _314: '💧', - _315: '💦', - _316: '🌧', - _317: '🌧', - _318: '🌧', - _399: '🌧', - _400: '🌨', - _401: '🌨', - _402: '☃️', - _403: '❄️', - _404: '🌨', - _405: '🌨', - _406: '🌨', - _407: '🌨', - _408: '🌨', - _409: '🌨', - _410: '❄️', - _499: '⛄️', - _500: '🌫', - _501: '🌫', - _502: '🌫', - _503: '🌫', - _504: '🌫', - _505: '🌫', - _506: '🌫', - _507: '🌫', - _508: '🌫', - _509: '🌫', - _510: '🌫', - _511: '🌫', - _512: '🌫', - _513: '🌫', - _514: '🌫', - _515: '🌫', - _900: '🔥', - _901: '⛄️', - _999: '❓', - } - return codeMap[`_${code}`] ? codeMap[`_${code}`] : ""; -} - -function getDarkskyWeatherIcon(icon_text) { - let icon = "❓" - if (icon_text == "clear-day") icon = "☀️"; - if (icon_text == "partly-cloudy-day") icon = "🌤"; - if (icon_text == "cloudy") icon = "☁️"; - if (icon_text == "rain") icon = "🌧"; - if (icon_text == "snow") icon = "☃️"; - if (icon_text == "sleet") icon = "🌨"; - if (icon_text == "wind") "🌬"; - if (icon_text == "fog") icon = "🌫"; - if (icon_text == "partly-cloudy-night") icon = "🌑"; - if (icon_text == "clear-night") icon = "🌑"; - return icon; -} - -function getDarkskyWeatherDesc(icon_text) { - let icon = "未知" - if (icon_text == "clear-day") icon = `晴`; - if (icon_text == "partly-cloudy-day") icon = `晴转多云`; - if (icon_text == "cloudy") icon = `多云`; - if (icon_text == "rain") icon = `雨`; - if (icon_text == "snow") icon = `雪`; - if (icon_text == "sleet") icon = `雨夹雪`; - if (icon_text == "wind") icon = `大风`; - if (icon_text == "fog") icon = `大雾`; - if (icon_text == "partly-cloudy-night") icon = `多云`; - if (icon_text == "clear-night") icon = `晴`; - return icon; -} - -function getCityInfo(name) { - var loc; - try { - var locArr = name.split(/[(),,()]/) - if (locArr.length >= 4) { - loc = locArr[2] + " "; - } else if (locArr.length >= 2) { - loc = locArr[1] + " "; - } else { - loc = ""; //此时会很长,还不如不显示了 - } - } catch (e) { - loc = ''; - $tool.log.error(`获取城市名称失败-${JSON.stringify(e)}`); - } - return loc; -} - -function getAqiInfo(aqi) { - var aqiDesc = ""; - var aqiIcon = ""; - var aqiWarning = ""; - if (aqi > 300) { - aqiIcon = `🟤`; - aqiDesc = `严重污染`; - aqiWarning = "儿童、老人、呼吸系统等疾病患者及一般人群停止户外活动"; - } else if (aqi > 200) { - aqiIcon = `🟣`; - aqiDesc = `重度污染`; - aqiWarning = "儿童、老人、呼吸系统等疾病患者及一般人群停止或减少户外运动"; - } else if (aqi > 150) { - aqiIcon = `🔴`; - aqiDesc = `中度污染`; - aqiWarning = "儿童、老人、呼吸系统等疾病患者及一般人群减少户外活动"; - } else if (aqi > 100) { - aqiIcon = `🟠`; - aqiDesc = `轻度污染`; - aqiWarning = "老人、儿童、呼吸系统等疾病患者减少长时间、高强度的户外活动"; - } else if (aqi > 50) { - aqiIcon = `🟡`; - aqiDesc = `良好`; - aqiWarning = "极少数敏感人群应减少户外活动"; - } else { - aqiIcon = `🟢`; - aqiDesc = `优`; - } - return { - aqi, - aqiIcon, - aqiDesc, - aqiWarning - }; -} - -function getUVDesc(daily_uvIndex) { - var uvDesc = ""; - if (daily_uvIndex >= 10) { - uvDesc = "五级-特别强"; - } else if (daily_uvIndex >= 7) { - uvDesc = "四级-很强"; - } else if (daily_uvIndex >= 5) { - uvDesc = "三级-较强"; - } else if (daily_uvIndex >= 3) { - uvDesc = "二级-较弱"; - } else { - uvDesc = "一级-最弱"; - } - return uvDesc; -} -// #endregion - -// #region 模板相关 -/** - * 用于标识该接口已执行,如果有使用超时设置则此操作是有意义的 - * @param {String} type 具体的接口执行类型 - */ -function start(type) { - if (config.timeout > 0) { - provider[type].timeoutNumber = setTimeout(() => { - check(type, false); - }, config.timeout); - } -} -/** - * 判断哪些接口需要进行处理,减少网络请求 - */ -function support() { - let regex = /\$\[([a-z,A-Z,0-9]*)\]/g; - const template = `${config.show.template.title}${config.show.template.subtitle}${config.show.template.detail}`.match(regex); - provider.heweather_now.progress = template.filter((item, filter) => { - return provider.heweather_now.support.indexOf(item) != -1; - }).length > 0 ? 0 : 2; - provider.heweather_daily.progress = template.filter((item, filter) => { - return provider.heweather_daily.support.indexOf(item) != -1; - }).length > 0 ? 0 : 2; - // provider.heweather_air.progress = template.filter((item, filter) => { - // return provider.heweather_air.support.indexOf(item) != -1; - // }).length > 0 ? 0 : 2; - provider.heweather_lifestyle.progress = template.filter((item, filter) => { - let regexLifestyle = /\$\[(lifeStyle\()+([\s\S]+?)(\))+\]/g; - return regexLifestyle.test(config.show.lifestyle) ? 0 : 2; - }).length > 0 ? 0 : 2; - provider.aqicn.progress = template.filter((item, filter) => { - return provider.aqicn.support.indexOf(item) != -1; - }).length > 0 ? 0 : 2; - provider.darksky.progress = template.filter((item, filter) => { - return provider.darksky.support.indexOf(item) != -1; - }).length > 0 ? 0 : 2; - if (provider.darksky.progress == 2) { - //如果 - let regexDaily = /\$\[(daily\()+([\s\S]+?)(\))+\]/g; - let regexHourly = /\$\[(hourly\()+([\s\S]+?)(\))+\]/g; - provider.darksky.progress = (regexDaily.test(config.show.template.detail) || regexHourly.test(config.show.template.detail)) ? 0 : 2; - } - $tool.log.debug(`h_n:${provider.heweather_now.progress},h_d:${provider.heweather_daily.progress},h_a:${provider.heweather_air.progress},h_l:${provider.heweather_lifestyle.progress},aq:${provider.aqicn.progress},da:${provider.darksky.progress}`) -} -/** - * 用于普通模板的映射 - * @param {String} template 模板内容 - * @param {Object} map 映射内容 - */ -function execTemplate(template, map) { - if (!template) return ""; - let regex = /\$\[([a-z,A-Z,0-9]*)\]/g; - if (regex.test(template)) { - for (item of template.match(regex)) { - item.match(regex); - if (RegExp.$1 && map[RegExp.$1]) { - template = template.replace(item, map[RegExp.$1]); - } else { - template = template.replace(item, ""); - } - } - } - return template; -} - -function execArrayTemplate() { - try { - execTemplateLifestyle(); - execTemplateDaily(); - execTemplateHourly(); - } catch (e) { - $tool.log.error(`${JSON.stringify(e)}`) - } - -} - -function execTemplateLifestyle() { - let regexLifestyle = /\$\[(lifeStyle\()+([\s\S]+?)(\))+\]/g; - if (provider.heweather_lifestyle.data <= 0) { - config.show.template.detail.replace(regexLifestyle, '') - } - let result = []; - if (regexLifestyle.test(config.show.template.detail)) { - let lsMap = { //此处用于显示各项生活指数,可自行调整顺序,顺序越在前面则显示也会靠前,如果您不想查看某一指数,置为false即可,想看置为true即可 - drsg: { - icon: '👔', - type: '穿衣指数' - }, - flu: { - icon: '🤧', - type: '感冒指数' - }, - comf: { - icon: '😊', - type: '舒适度指数' - }, - cw: { - icon: '🚗', - type: '洗车指数' - }, - sport: { - icon: '🏃🏻', - type: '运动指数' - }, - trav: { - icon: '🌴', - type: '旅游指数' - }, - uv: { - icon: '☂️', - type: '紫外线指数' - }, - air: { - icon: '🌫', - type: '空气污染扩散条件指数' - }, - ac: { - icon: '❄️', - type: '空调开启指数' - }, - ag: { - icon: '😷', - type: '过敏指数' - }, - gl: { - icon: '🕶', - type: '太阳镜指数' - }, - mu: { - icon: '💄', - type: '化妆指数' - }, - airc: { - icon: '🧺', - type: '晾晒指数' - }, - ptfc: { - icon: '🚥', - type: '交通指数' - }, - fsh: { - icon: '🎣', - type: '钓鱼指数' - }, - spi: { - icon: '🔆', - type: '防晒指数' - }, - } - config.show.template.detail.match(regexLifestyle); - var rangeTemplate = RegExp.$2; //此处拿到的是要替换的列表显示部分了 - let regex = /\$\[([a-z,A-Z,0-9]*)\]/g; - var template = rangeTemplate.match(regex); - for (life of provider.heweather_lifestyle.data) { - if (!config.show.lifestyle[life.type]) continue; - var singleInfo = rangeTemplate; - for (item of template) { - item.match(regex); - if (RegExp.$1 == "icon") { - singleInfo = singleInfo.replace(item, lsMap[life.type].icon) - } else if (RegExp.$1 == "type") { - singleInfo = singleInfo.replace(item, lsMap[life.type].type) - } else { - singleInfo = singleInfo.replace(item, life[RegExp.$1]) - } - } - result.push(singleInfo); - } - config.show.template.detail = config.show.template.detail.replace(regexLifestyle, result.join(lineBreak)); - } -} - -function execTemplateDaily() { - let regexDaily = /\$\[(daily\()+([\s\S]+?)(\))+\]/g; - if (provider.darksky.data.daily.data.length <= 0) { - config.show.template.detail.replace(regexDaily, '') - } - let result = []; - if (regexDaily.test(config.show.template.detail)) { - config.show.template.detail.match(regexDaily); - var rangeTemplate = RegExp.$2; //此处拿到的是要替换的列表显示部分了 - let regex = /\$\[([a-z,A-Z,0-9]*)\]/g; - var template = rangeTemplate.match(regex); - for (daily of provider.darksky.data.daily.data) { - var singleInfo = rangeTemplate; - for (item of template) { - item.match(regex); - if (RegExp.$1 == "month") { - singleInfo = singleInfo.replace(item, (`${daily["time"]}`).toDateTime().Format("MM")); - } else if (RegExp.$1 == "day") { - singleInfo = singleInfo.replace(item, (`${daily["time"]}`).toDateTime().Format("dd")); - } else if (RegExp.$1 == "weatherIcon") { - singleInfo = singleInfo.replace(item, getDarkskyWeatherIcon(daily.icon)); - } else if (RegExp.$1 == "weather") { - singleInfo = singleInfo.replace(item, getDarkskyWeatherDesc(daily.icon)); - } else if (RegExp.$1 == "uvDesc") { - singleInfo = singleInfo.replace(item, getUVDesc(daily.uvIndex)); - } else if (RegExp.$1 == "cloudCover") { - singleInfo = singleInfo.replace(item, daily.cloudCover * 100); - } else if (RegExp.$1 == "temperatureHigh") { - singleInfo = singleInfo.replace(item, Math.round(daily.temperatureHigh)); - } else if (RegExp.$1 == "temperatureLow") { - singleInfo = singleInfo.replace(item, Math.round(daily.temperatureLow)); - } else if (RegExp.$1 == "apparentTemperatureMax") { - singleInfo = singleInfo.replace(item, Math.round(daily.apparentTemperatureMax)); - } else if (RegExp.$1 == "apparentTemperatureMin") { - singleInfo = singleInfo.replace(item, Math.round(daily.apparentTemperatureMin)); - } else if (RegExp.$1 && daily[RegExp.$1] != undefined) { - singleInfo = singleInfo.replace(item, daily[RegExp.$1]); - } - } - result.push(singleInfo); - } - config.show.template.detail = config.show.template.detail.replace(regexDaily, result.join(lineBreak)); - } -} - -function execTemplateHourly() { - let regexHourly = /\$\[(hourly\()+([\s\S]+?)(\))+\]/g; - if (provider.darksky.data.hourly.data.length <= 0) { - config.show.template.detail.replace(regexHourly, '') - } - let result = []; - if (regexHourly.test(config.show.template.detail)) { - config.show.template.detail.match(regexHourly); - var rangeTemplate = RegExp.$2; //此处拿到的是要替换的列表显示部分了 - let regex = /\$\[([a-z,A-Z,0-9]*)\]/g; - var template = rangeTemplate.match(regex); - for (hourly of provider.darksky.data.hourly.data) { - var singleInfo = rangeTemplate; - for (item of template) { - item.match(regex); - if (RegExp.$1 == "month") { - singleInfo = singleInfo.replace(item, (`${hourly["time"]}`).toDateTime().Format("MM")); - } else if (RegExp.$1 == "day") { - singleInfo = singleInfo.replace(item, (`${hourly["time"]}`).toDateTime().Format("dd")); - } else if (RegExp.$1 == "hour") { - singleInfo = singleInfo.replace(item, (`${hourly["time"]}`).toDateTime().Format("hh")); - } else if (RegExp.$1 == "weatherIcon") { - singleInfo = singleInfo.replace(item, getDarkskyWeatherIcon(hourly.icon)); - } else if (RegExp.$1 == "weather") { - singleInfo = singleInfo.replace(item, getDarkskyWeatherDesc(hourly.icon)); - } else if (RegExp.$1 == "uvDesc") { - singleInfo = singleInfo.replace(item, getUVDesc(hourly.uvIndex)); - } else if (RegExp.$1 == "cloudCover") { - singleInfo = singleInfo.replace(item, hourly.cloudCover * 100); - } else if (RegExp.$1 == "temperature") { - singleInfo = singleInfo.replace(item, Math.round(hourly.temperature)); - } else if (RegExp.$1 == "apparentTemperature") { - singleInfo = singleInfo.replace(item, Math.round(hourly.apparentTemperature)); - } else if (RegExp.$1 && hourly[RegExp.$1] != undefined) { - singleInfo = singleInfo.replace(item, hourly[RegExp.$1]); - } - } - result.push(singleInfo); - } - config.show.template.detail = config.show.template.detail.replace(regexHourly, result.join(lineBreak)); - } -} - -// #endregion - -// #region 扩展方法 -Array.prototype.get = function (index, defaultValue = {}) { - if (index >= 0 && this.length > 0 && this.length >= index + 1) { - return this[index]; - } else { - return defaultValue; - } -} -String.prototype.toDateTime = function () { - var time = parseInt(this + '000'); - return new Date(time); -} -Date.prototype.Format = function (fmt) { - var o = { - "M+": this.getMonth() + 1, //月份 - "d+": this.getDate(), //日 - "h+": this.getHours(), //小时 - "m+": this.getMinutes(), //分 - "s+": this.getSeconds(), //秒 - "q+": Math.floor((this.getMonth() + 3) / 3), //季度 - "S": this.getMilliseconds() //毫秒 - }; - if (/(y+)/.test(fmt)) - fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); - for (var k in o) - if (new RegExp("(" + k + ")").test(fmt)) - fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); - return fmt; -} -// #endregion - -// https://github.com/yichahucha/surge/blob/master/tool.js -//https://github.com/chavyleung/scripts/blob/master/chavy.js -// 工具方法编写参考了以上脚本,在此感谢 🙏 -function Tool() { - // app - const _isQuanX = typeof $task != "undefined" - const _isSurge = typeof $httpClient != "undefined" - const _isJSBox = typeof $app != "undefined" && $app.info.bundleID == "app.cyan.jsbox" - const _isNode = typeof require == "function" && !_isJSBox - - // environment - const _isRequest = typeof $request != "undefined" - const _isResponse = typeof $response != "undefined" - - const ishttp = _isRequest || _isResponse - - // require Tools - const _requireTools = (() => { - var tools = {} - if (typeof require == "function") { - let request = require('request') - if (request) tools.request = request - let fs = require("fs") - if (fs) tools.fs = fs - } - return tools - })() - - // config - const _nodeStoreName = "prefs.json" - - // custom log - // if you want to add log level, just add to _logLevels - const _log = (() => { - // default log value - let _logLevel = "debug" - - const _logLevels = new Array("trace", "debug", "info", "warn", "error", "fatal") - - // 默认显示日志等级 - let _isShowLevel = true - - // 设置日志等级,返回值为当前等级 - const _setLogLevel = (level = "") => { - if (_logLevels.indexOf(level) > -1) { - _logLevel = level - } - return _logLevel - } - - const showLevel = (isShow) => { - if (typeof isShow == "boolean") { - _isShowLevel = isShow - } - return _isShowLevel - } - - // 过滤低等级日志信息 - const _filterLog = (level, callback) => { - let index = _logLevels.indexOf(level) - let current = _logLevels.indexOf(_setLogLevel()) - if (index > -1) { - if (index >= current) { - callback() - } - } else { - callback() - } - } - - const _setLogFunction = (level) => { - return (message) => { - _filterLog(level, (() => { - if (showLevel()) { - console.log(`<${level}> ${message}`) - } else { - console.log(message) - } - })) - } - } - - let level = _setLogLevel - let log = _filterLog - var logFunc = {level, log, showLevel} - _logLevels.forEach((item) => { - logFunc[item] = _setLogFunction(item) - }) - - return logFunc - }) - - const log = _log() - - // setTimeout - const timeout = (() => { - if (typeof setTimeout != "undefined") { - return setTimeout - } - return (handler, timeout = 0) => { - handler() - } - })() - - // notification - const notify = (title, subtitle, message) => { - if (_isQuanX) { - $notify(title, subtitle, message) - } - if (_isSurge) { - $notification.post(title, subtitle, message) - } - if (_isNode) { - console.log(JSON.stringify({title, subtitle, message})) - } - if (_isJSBox) { - if (subtitle && message) { - $push.schedule({title: title, body: subtitle + "\n" + message}) - } else { - $push.schedule({title: title, body: subtitle + message}) - } - } - } - - // store - const read = (key) => { - if (_isQuanX) return $prefs.valueForKey(key) - if (_isSurge) return $persistentStore.read(key) - if (_isJSBox) return _jsBoxRead(key) - if (_isNode) return _nodeRead(key) - } - - const write = (value, key) => { - if (_isQuanX) return $prefs.setValueForKey(value, key) - if (_isSurge) return $persistentStore.write(value, key) - if (_isJSBox) return _jsBoxWrite(value, key) - if (_isNode) return _nodeWrite(value, key) - } - - const _nodeRead = (key) => { - try { - var data = JSON.parse(_requireTools.fs.readFileSync(_nodeStoreName)) - if (typeof data[key] != "undefined") { - return data[key] - } - } catch (error) { - log.error(error) - } - return "" - } - - const _nodeWrite = (value, key) => { - try { - if (!_requireTools.fs.existsSync(_nodeStoreName)) { - _requireTools.fs.writeFileSync(_nodeStoreName, JSON.stringify({})) - } - var data = JSON.parse(_requireTools.fs.readFileSync(_nodeStoreName)) - data[key] = value - _requireTools.fs.writeFileSync(_nodeStoreName, JSON.stringify(data)) - return true - } catch (error) { - log.error(error) - } - return false - } - - const _jsBoxRead = (key) => { - try { - if (_jsBoxEnvName != "icloud") { - return $prefs.get(key) - } - if (typeof $drive != "undefined") { - let filePath = "Code/" + _nodeStoreName - if ($drive.exists(filePath)) { - let content = $drive.read(filePath) - if (content) { - let data = JSON.parse(content) - if (typeof data[key] != "undefined") { - return data[key] - } - } - } - } - } catch (error) { - log.error(error) - } - return "" - } - - const _jsBoxWrite = (value, key) => { - try { - if (_jsBoxEnvName != "icloud") { - return $prefs.set(key, value) - } - if (typeof $drive != "undefined") { - let filePath = "Code/" + _nodeStoreName - var data = {} - if ($drive.exists(filePath)) { - let content = $drive.read(filePath) - data = JSON.parse(content) - } - data[key] = value - return $drive.write({data: $data({string: JSON.stringify(data)}), path: filePath}) - } - } catch (error) { - log.error(error) - } - return false - } - - const _jsBoxEnvName = (() => { - if (typeof $addin != "undefined") { - if (typeof $addin.current == "undefined") { - // 运行在icloud - return "icloud" - } else { - - let _version = typeof $addin.current.version != "undefined" - let _author = typeof $addin.current.author != "undefined" - let _url = typeof $addin.current.url != "undefined" - let _website = typeof $addin.current.website != "undefined" - if (_version || _author || _url || _website) { - // jsBox 应用 - return "app" - } else { - // jsBox 脚本 - return "script" - } - } - } - return "" - })() - - // http request - const get = (options, callback) => { - if (_isQuanX) { - if (typeof options == "string") options = {url: options} - options["method"] = "GET" - $task.fetch(options).then(response => { - callback(null, _status(response), response.body) - }, reason => callback(reason.error, null, null)) - } - if (_isSurge) $httpClient.get(options, (error, response, body) => { - callback(error, _status(response), body) - }); - if (_isNode) { - _requireTools.request(options, (error, response, body) => { - callback(error, _status(response), body) - }) - } - if (_isJSBox) $http.get(_jsBoxRequest(options, callback)) - } - const post = (options, callback) => { - if (_isQuanX) { - if (typeof options == "string") options = {url: options} - options["method"] = "POST" - $task.fetch(options).then(response => { - callback(null, _status(response), response.body) - }, reason => callback(reason.error, null, null)) - } - if (_isSurge) { - $httpClient.post(options, (error, response, body) => { - callback(error, _status(response), body) - }) - } - if (_isNode) { - _requireTools.request.post(options, (error, response, body) => { - callback(error, _status(response), body) - }) - } - if (_isJSBox) $http.post(_jsBoxRequest(options, callback)) - } - - const _jsBoxRequest = (options, callback) => { - if (typeof options == "string") options = {url: options} - options["header"] = options["headers"] - delete options["headers"] - let body = options["body"] - if (typeof body != "undefined") { - try { - body = JSON.parse(body) - options["body"] = body - } catch (e) { - } - } - options["handler"] = function (resp) { - let error = resp.error - if (error) error = JSON.stringify(resp.error) - let body = resp.data - if (typeof body == "object") body = JSON.stringify(resp.data) - callback(error, _status(resp.response), body) - } - return options - } - - const _status = (response) => { - if (response) { - if (response.status) { - response["statusCode"] = response.status - } else if (response.statusCode) { - response["status"] = response.statusCode - } - } - return response - } - - // done - const done = (value = {}) => { - if (_isQuanX) ishttp ? $done(value) : "" - if (_isSurge) ishttp ? $done(value) : $done() - } - - return {read, write, notify, get, post, ishttp, log, timeout, done} -}