Fixed the problem of TikTok China

This commit is contained in:
NobyDa 2020-08-31 06:35:02 +08:00
parent 934f1e430b
commit 21719a13d9
4 changed files with 222 additions and 60 deletions

View File

@ -28,14 +28,8 @@ https://api.bilibili.com/x/v2/reply/main?access_key url script-response-body htt
https://api.live.bilibili.com/xlive/app-room/v1/index/getInfoByRoom?access_key url script-response-body https://raw.githubusercontent.com/onewayticket255/Surge-Script/master/surge%20bilibili%20live.js
# 抖音去广告去水印 (By Choler)
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/feed\/ url 302 https://aweme.snssdk.com/aweme/v1/feed/
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/aweme\/post\/ url 302 https://aweme.snssdk.com/aweme/v1/aweme/post/
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/follow\/feed\/ url 302 https://aweme.snssdk.com/aweme/v1/follow/feed/
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/nearby\/feed\/ url 302 https://aweme.snssdk.com/aweme/v1/nearby/feed/
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/search\/item\/ url 302 https://aweme.snssdk.com/aweme/v1/search/item/
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/general\/search\/single\/ url 302 https://aweme.snssdk.com/aweme/v1/general/search/single/
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/hot/search\/video\/list\/ url 302 https://aweme.snssdk.com/aweme/v1/hot/search/video/list/
^https?:\/\/aweme\.snssdk\.com\/aweme\/v1\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/ url script-response-body https://Choler.github.io/Surge/Script/douyin.js
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/ url script-request-header https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Aweme.js
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/ url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Aweme.js
# 酷我音乐SVIP (By yxiaocai)
^https?:\/\/vip1\.kuwo\.cn\/(vip\/v2\/user\/vip|vip\/spi/mservice) url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Kuwo.js

View File

@ -1,4 +1,4 @@
hostname = api.weibo.cn, mapi.weibo.com, *.uve.weibo.com, mp.weixin.qq.com, api.bilibili.com, app.bilibili.com, *.zhihu.com, aweme*.snssdk.com, *.kuwo.cn, *.xiaoxiao*.com, api*.tiktokv.com, *.musical.ly, *.amemv.com, p.du.163.com, getuserinfo.321mh.com, getuserinfo-globalapi.zymk.cn, ios.fuliapps.com, vsco.co, api.vnision.com, *.my10api.com, sp.kaola.com, r.inews.qq.com, apple.fuliapps.com, newdrugs.dxy.cn, app101.avictown.cc, api.hlo.xyz, api.ijo.xyz, www.luqijianggushi.com, account.wps.cn, u.kanghuayun.com, api1.dobenge.cn, api.mvmtv.com, mitaoapp.yeduapp.com, origin-prod-phoenix.jibjab.com, www.3ivf.com, pay.guoing.com, api.bjxkhc.com, viva.v21xy.com, biz.caiyunapp.com, ap*.intsig.net, mp.bybutter.com, api.vuevideo.net, api.picsart.c*, api.meiease.c*, api.gamer.com.tw, ios.xiangjiaoapps.com, apple.xiangjiaoapps.com, *.xiangxiangapps.com
hostname = api.weibo.cn, mapi.weibo.com, *.uve.weibo.com, mp.weixin.qq.com, api.bilibili.com, app.bilibili.com, *.zhihu.com, aweme*.snssdk.com, *.kuwo.cn, *.xiaoxiao*.com, *.amemv.com, p.du.163.com, getuserinfo.321mh.com, getuserinfo-globalapi.zymk.cn, ios.fuliapps.com, vsco.co, api.vnision.com, *.my10api.com, sp.kaola.com, r.inews.qq.com, apple.fuliapps.com, newdrugs.dxy.cn, app101.avictown.cc, api.hlo.xyz, api.ijo.xyz, www.luqijianggushi.com, account.wps.cn, u.kanghuayun.com, api1.dobenge.cn, api.mvmtv.com, mitaoapp.yeduapp.com, origin-prod-phoenix.jibjab.com, www.3ivf.com, pay.guoing.com, api.bjxkhc.com, viva.v21xy.com, biz.caiyunapp.com, ap*.intsig.net, mp.bybutter.com, api.vuevideo.net, api.picsart.c*, api.meiease.c*, api.gamer.com.tw, ios.xiangjiaoapps.com, apple.xiangjiaoapps.com, *.xiangxiangapps.com
# 去微博应用内广告 (By yichahucha)
@ -8,7 +8,9 @@
^https?:\/\/mp\.weixin\.qq\.com\/mp\/getappmsgad url script-response-body NobyDa/QuantumultX/File/Wechat.js
# 抖音去广告去水印 (By Choler)
^https://aweme-eagle(.*)\.snssdk\.com\/aweme/.+/(feed|aweme/post|follow/feed)/ url script-response-body NobyDa/Surge/JS/Aweme.js
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/ url script-request-header NobyDa/Surge/JS/Aweme.js
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/ url script-response-body NobyDa/Surge/JS/Aweme.js
# 酷我音乐SVIP (By yxiaocai)
^https?:\/\/vip1\.kuwo\.cn\/(vip\/v2\/user\/vip|vip\/spi/mservice) url script-response-body NobyDa/Surge/JS/Kuwo.js

View File

@ -1,61 +1,215 @@
/*
by choler
[URL Rewrite]
^https://aweme-eagle(.*)\.snssdk\.com/aweme/v2/ https://aweme-eagle$1.snssdk.com/aweme/v1/ 302
抖音去广告, 去水印. 改自https://github.com/Choler/Surge/blob/master/Script/douyin.js
***************************
Surge 4.2+ :
[Script]
http-response ^https://[\s\S]*\/aweme/v1/(feed|aweme/post|follow/feed)/ requires-body=1,max-size=-1,script-path=https://Choler.github.io/Surge/Script/Aweme.js
抖音去广告&水印req = type=http-request,pattern=^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Aweme.js
抖音去广告&水印res = type=http-response,pattern=^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Aweme.js
[MITM]
hostname = *.amemv.com, *.snssdk.com
hostname = *.amemv.com
***************************
***************************
QuantumultX 1.0.10+ :
[rewrite_local]
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/ url script-request-header https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Aweme.js
^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/ url script-response-body https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Aweme.js
[mitm]
hostname = *.amemv.com
***************************
*/
let arr = {
"allow_download": true,
"share_type": 0,
"show_progress_bar": 0,
"draft_progress_bar": 0,
"allow_duet": true,
"allow_react": true,
"prevent_download_type": 2,
"allow_dynamic_wallpaper": false
};
let body = $response.body.replace(/watermark=1/g, "watermark=0");
var obj = JSON.parse(body);
if (obj.aweme_list) {
for (var i = obj.aweme_list.length - 1; i >= 0; i--) {
if (obj.aweme_list[i].raw_ad_data) {
obj.aweme_list.splice(i, 1);
}
if (obj.aweme_list[i].poi_info) {
delete obj.aweme_list[i].poi_info;
}
if (obj.aweme_list[i].sticker_detail) {
delete obj.aweme_list[i].sticker_detail;
}
if (obj.aweme_list[i].simple_promotions) {
delete obj.aweme_list[i].simple_promotions;
}
obj.aweme_list[i].status.reviewed = 1;
obj.aweme_list[i].video_control = arr;
}
$done({body: JSON.stringify(obj)});
} else if (obj.data) {
for (var i = obj.data.length - 1; i >= 0; i--) {
if (obj.data[i].aweme) {
if (obj.data[i].aweme.poi_info) {
delete obj.data[i].aweme.poi_info;
}
if (obj.data[i].aweme.simple_promotions) {
delete obj.data[i].aweme.simple_promotions;
}
obj.data[i].aweme.status.reviewed = 1;
obj.data[i].aweme.video_control = arr;
const path1 = "/feed/"; // 推荐
const path2 = "/aweme/post/"; //作品
const path3 = "/follow/feed/"; // 关注
const path4 = "/nearby/feed/"; // 同城
const path5 = "/search/item/"; // 视频
const path6 = "/general/search/"; // 综合
const path7 = "/hot/search/video/"; // 热搜
try {
if (typeof $response != "undefined") {
if ($request.url.indexOf(path1) != -1) {
feed();
} else if ($request.url.indexOf(path2) != -1) {
post();
} else if ($request.url.indexOf(path3) != -1) {
follow();
} else if ($request.url.indexOf(path4) != -1) {
nearby();
} else if ($request.url.indexOf(path5) != -1) {
item();
} else if ($request.url.indexOf(path6) != -1) {
search();
} else if ($request.url.indexOf(path7) != -1) {
hot();
} else {
obj.data.splice(i, 1);
$done({});
}
} else {
$done({
url: $request.url.replace(/\/v\d\//, "/v1/")
});
}
} catch {
$done({});
}
function feed() {
let obj = JSON.parse($response.body);
let arr = obj.aweme_list;
for (var i = arr.length - 1; i >= 0; i--) {
if (arr[i].is_ads != false) {
arr.splice(i, 1);
}
let play = arr[i].video.play_addr.url_list;
arr[i].video.download_addr.url_list = play;
let download = arr[i].video.download_addr;
arr[i].video.download_suffix_logo_addr = download;
arr[i].status.reviewed = 1;
arr[i].video_control.allow_download = true;
arr[i].author.room_id = 0;
arr[i].video.misc_download_addrs = {};
}
$done({
body: JSON.stringify(obj)
});
}
function post() {
let obj = JSON.parse($response.body);
let arr = obj.aweme_list;
if (arr != null) {
for (var i = arr.length - 1; i >= 0; i--) {
arr[i].status.reviewed = 1;
arr[i].video_control.allow_download = true;
let play = arr[i].video.play_addr.url_list;
arr[i].video.download_addr.url_list = play;
let download = arr[i].video.download_addr;
arr[i].video.download_suffix_logo_addr = download;
}
}
$done({body: JSON.stringify(obj)});
} else {
$done({body});
$done({
body: JSON.stringify(obj)
});
}
function follow() {
let obj = JSON.parse($response.body);
let arr = obj.data;
for (var i = arr.length - 1; i >= 0; i--) {
arr[i].aweme.status.reviewed = 1;
arr[i].aweme.video_control.allow_download = true;
let play = arr[i].aweme.video.play_addr.url_list;
arr[i].aweme.video.download_addr.url_list = play;
let download = arr[i].aweme.video.download_addr;
arr[i].aweme.video.download_suffix_logo_addr = download;
}
$done({
body: JSON.stringify(obj)
});
}
function nearby() {
let obj = JSON.parse($response.body);
if (obj.aweme_list) {
for (var i = obj.aweme_list.length - 1; i >= 0; i--) {
if (obj.aweme_list[i].video) {
if (obj.aweme_list[i].status.reviewed != 1) {
obj.aweme_list[i].status.reviewed = 1;
obj.aweme_list[i].video_control.allow_download = true;
}
if (obj.aweme_list[i].video.download_addr) {
let play = obj.aweme_list[i].video.play_addr.url_list;
obj.aweme_list[i].video.download_addr.url_list = play;
}
if (obj.aweme_list[i].video.download_suffix_logo_addr) {
let download = obj.aweme_list[i].video.download_addr;
obj.aweme_list[i].video.download_suffix_logo_addr = download;
}
} else {
obj.aweme_list.splice(i, 1);
}
}
}
$done({
body: JSON.stringify(obj)
});
}
function item() {
let obj = JSON.parse($response.body);
if (obj.aweme_list) {
for (var i = obj.aweme_list.length - 1; i >= 0; i--) {
if (obj.aweme_list[i].video) {
if (obj.aweme_list[i].status.reviewed != 1) {
obj.aweme_list[i].status.reviewed = 1;
obj.aweme_list[i].video_control.allow_download = true;
}
if (obj.aweme_list[i].video.download_addr) {
let play = obj.aweme_list[i].video.play_addr.url_list;
obj.aweme_list[i].video.download_addr.url_list = play;
}
if (obj.aweme_list[i].video.download_suffix_logo_addr) {
let download = obj.aweme_list[i].video.download_addr;
obj.aweme_list[i].video.download_suffix_logo_addr = download;
}
}
}
}
$done({
body: JSON.stringify(obj)
});
}
function search() {
let obj = JSON.parse($response.body);
let arr = obj.data;
for (var i = arr.length - 1; i >= 0; i--) {
if (arr[i].type == 1) {
if (arr[i].aweme_info.is_ads) {
arr.splice(i, 1);
}
if (arr[i].aweme_info.video) {
let play = arr[i].aweme_info.video.play_addr.url_list;
arr[i].aweme_info.video.download_addr.url_list = play;
let download = arr[i].aweme_info.video.download_addr;
arr[i].aweme_info.video.download_suffix_logo_addr = download;
arr[i].aweme_info.status.reviewed = 1;
arr[i].aweme_info.video_control.allow_download = true;
}
}
}
$done({
body: JSON.stringify(obj)
});
}
function hot() {
let obj = JSON.parse($response.body);
if (obj.aweme_list) {
for (var i = obj.aweme_list.length - 1; i >= 0; i--) {
if (obj.aweme_list[i].video.download_addr) {
let play = obj.aweme_list[i].video.play_addr.url_list;
obj.aweme_list[i].video.download_addr.url_list = play;
}
if (obj.aweme_list[i].video.download_suffix_logo_addr) {
let download = obj.aweme_list[i].video.download_addr;
obj.aweme_list[i].video.download_suffix_logo_addr = download;
}
if (obj.aweme_list[i].video.misc_download_addrs) {
obj.aweme_list[i].video.misc_download_addrs = {};
}
}
}
$done({
body: JSON.stringify(obj)
});
}

View File

@ -0,0 +1,12 @@
#!name=抖音
#!desc=去广告,去水印.
#!system=ios
[Script]
抖音去广告&水印req = type=http-request,pattern=^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Aweme.js
抖音去广告&水印res = type=http-response,pattern=^https?:\/\/.+?\.amemv\.com\/aweme\/v\d\/(feed|aweme\/post|follow\/feed|nearby\/feed|search\/item|general\/search\/single|hot\/search\/video\/list)\/,requires-body=1,max-size=0,script-path=https://raw.githubusercontent.com/NobyDa/Script/master/Surge/JS/Aweme.js
[MITM]
hostname = %APPEND% *.amemv.com