diff --git a/.classpath b/.classpath deleted file mode 100644 index 9fa0d8c..0000000 --- a/.classpath +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/.gitignore b/.gitignore index b83d222..0b61641 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ /target/ +/.settings/ +/.classpath \ No newline at end of file diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index f3c1742..0000000 --- a/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/main/resources=UTF-8 -encoding//src/test/resources=UTF-8 -encoding/=UTF-8 -encoding/src=UTF-8 diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index da3b103..0000000 --- a/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,15 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=11 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore -org.eclipse.jdt.core.compiler.release=disabled -org.eclipse.jdt.core.compiler.source=11 diff --git a/pom.xml b/pom.xml index 01c18e7..b78abdc 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.khjxiaogu MiraiSongPlugin - 1.2.1 + 1.2.2 MiraiSongPlugin 使用“#音乐 关键词”、“#QQ 关键词”、“#网易 关键词”等方式进行点歌的插件。 diff --git a/src/main/java/com/khjxiaogu/MiraiSongPlugin/MiraiSongPlugin.java b/src/main/java/com/khjxiaogu/MiraiSongPlugin/MiraiSongPlugin.java index 6fc2536..af71d6c 100644 --- a/src/main/java/com/khjxiaogu/MiraiSongPlugin/MiraiSongPlugin.java +++ b/src/main/java/com/khjxiaogu/MiraiSongPlugin/MiraiSongPlugin.java @@ -361,10 +361,10 @@ public void reload() { YamlMap excs = (YamlMap) cfg.get(new YamlLiteral("extracommands")); YamlMap exps = (YamlMap) cfg.get(new YamlLiteral("extraparsers")); String addDefault = cfg.getStringOrNull("adddefault"); + String neteaseCookie=cfg.getStringOrNull("neteasecookies"); + NetEaseCrypto.cookie=neteaseCookie; commands.clear(); - - if (addDefault == null || addDefault.equals("true")) { urlMatchers.add(makeMatcher("music\\.163\\.com.*/song.*\\?.*id=([0-9]+)","网易","Mirai")); urlMatchers.add(makeMatcher("i\\.y\\.qq\\.com/v8/playsong\\.html\\?.*songid=([0-9]+)","QQ音乐","Mirai")); diff --git a/src/main/java/com/khjxiaogu/MiraiSongPlugin/NetEaseCrypto.java b/src/main/java/com/khjxiaogu/MiraiSongPlugin/NetEaseCrypto.java index d88c46e..dba95f6 100644 --- a/src/main/java/com/khjxiaogu/MiraiSongPlugin/NetEaseCrypto.java +++ b/src/main/java/com/khjxiaogu/MiraiSongPlugin/NetEaseCrypto.java @@ -99,7 +99,7 @@ public static String getUserAgent() { * 输入向量. */ private static String iv = "0102030405060708"; - + public static String cookie=""; /** * Create a AES secret key.
* 生成AES密钥 diff --git a/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseHQMusicSource.java b/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseHQMusicSource.java index bc24ed1..4ac3186 100644 --- a/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseHQMusicSource.java +++ b/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseHQMusicSource.java @@ -35,6 +35,7 @@ public String queryRealUrl(String id) throws Exception { .url("/weapi/song/enhance/player/url?csrf_token=") .contenttype("application/x-www-form-urlencoded") .referer("https://music.163.com") + .cookie(NetEaseCrypto.cookie) .ua(NetEaseCrypto.getUserAgent()) .post() .send(NetEaseCrypto.weapiEncryptParam(JsonBuilder.object().add("ids","[" + id + "]").add("br",999000).toString())) diff --git a/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseMusicSource.java b/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseMusicSource.java index cf64995..6ab6a0e 100644 --- a/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseMusicSource.java +++ b/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseMusicSource.java @@ -39,14 +39,17 @@ public String queryRealUrl(String id) throws Exception { @Override public MusicInfo get(String keyword) throws Exception { String murl; - JsonArray ja=HttpRequestBuilder.create("music.163.com") + JsonObject jom=HttpRequestBuilder.create("music.163.com") .url("/weapi/cloudsearch/get/web?csrf_token=") .referer("http://music.163.com/") - .cookie("appver=1.5.0.75771;") + .cookie("appver=1.5.0.75771;"+NetEaseCrypto.cookie) .contenttype("application/x-www-form-urlencoded") .post() .send(NetEaseCrypto.weapiEncryptParam(JsonBuilder.object().add("s", keyword).add("type", 1).add("offset", 0).add("limit", 3).toString())) - .readJson().get("result").getAsJsonObject().get("songs").getAsJsonArray(); + .readJson(); + System.out.println(jom); + JsonArray ja=jom + .get("result").getAsJsonObject().get("songs").getAsJsonArray(); JsonObject jo = ja.get(0).getAsJsonObject(); murl = queryRealUrl(jo.get("id").getAsString()); int i = 0; @@ -66,7 +69,7 @@ public MusicInfo getId(String id) throws Exception { JsonObject jo =HttpRequestBuilder.create("music.163.com") .url("/weapi/song/detail?csrf_token=") .referer("http://music.163.com/") - .cookie("appver=1.5.0.75771;") + .cookie("appver=1.5.0.75771;"+NetEaseCrypto.cookie) .contenttype("application/x-www-form-urlencoded") .post() .send(NetEaseCrypto.weapiEncryptParam(JsonBuilder.object().array("ids").add(id).end().toString())) diff --git a/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseRadioSource.java b/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseRadioSource.java index 8a4e03d..a7f8851 100644 --- a/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseRadioSource.java +++ b/src/main/java/com/khjxiaogu/MiraiSongPlugin/musicsource/NetEaseRadioSource.java @@ -41,6 +41,7 @@ protected JsonObject getSlice(String id,int offset,int limit) throws IOException return HttpRequestBuilder.create("music.163.com") .url("/weapi/dj/program/byradio?csrf_token=") .defUA() + .cookie(NetEaseCrypto.cookie) .contenttype("application/x-www-form-urlencoded") .referer("https://music.163.com") .ua(NetEaseCrypto.getUserAgent()) @@ -57,6 +58,7 @@ protected JsonObject getProgramSong(String id) throws IOException { JsonObject main=HttpRequestBuilder.create("music.163.com") .url("/weapi/dj/program/detail?csrf_token=") .defUA() + .cookie(NetEaseCrypto.cookie) .contenttype("application/x-www-form-urlencoded") .referer("https://music.163.com") .ua(NetEaseCrypto.getUserAgent()) @@ -122,7 +124,7 @@ public MusicInfo get(String keyword, String songname) throws Exception { JsonArray ja=HttpRequestBuilder.create("music.163.com") .url("/weapi/cloudsearch/get/web?csrf_token=") .ua(NetEaseCrypto.getUserAgent()) - .cookie("appver=1.5.0.75771;") + .cookie("appver=1.5.0.75771;"+NetEaseCrypto.cookie) .referer("http://music.163.com/") .contenttype("application/x-www-form-urlencoded") .post() diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index 71afec7..312d969 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -14,6 +14,7 @@ hintsourcenotfound: "无法找到来源。" enableParser: 1 admins: - 0 +neteasecookies: MUSIC_U=; extracommands: "#分享": source: all