summaryrefslogtreecommitdiff
path: root/ATRIbot/plugins/cloudmusic.py
diff options
context:
space:
mode:
authorKyomotoi <[email protected]>2020-08-02 00:29:45 +0800
committerKyomotoi <[email protected]>2020-08-02 00:29:45 +0800
commitcec3a97227dd3f9a88bbafe7f2bc96bf513f53ae (patch)
tree66033fde43c45418fcf7716d14180a611be9adc0 /ATRIbot/plugins/cloudmusic.py
parentb9c98687b9b25c86146b849dd40b248e13d2d136 (diff)
downloadATRI-cec3a97227dd3f9a88bbafe7f2bc96bf513f53ae.tar.gz
ATRI-cec3a97227dd3f9a88bbafe7f2bc96bf513f53ae.tar.bz2
ATRI-cec3a97227dd3f9a88bbafe7f2bc96bf513f53ae.zip
[Update] Refactor this project
Diffstat (limited to 'ATRIbot/plugins/cloudmusic.py')
-rw-r--r--ATRIbot/plugins/cloudmusic.py87
1 files changed, 0 insertions, 87 deletions
diff --git a/ATRIbot/plugins/cloudmusic.py b/ATRIbot/plugins/cloudmusic.py
deleted file mode 100644
index 4452eee..0000000
--- a/ATRIbot/plugins/cloudmusic.py
+++ /dev/null
@@ -1,87 +0,0 @@
-import json
-import nonebot
-from orjson import loads
-from html import unescape
-
-import requests
-
-def request_api(url):
- response = requests.request("GET", url)
- html = response.text
- return html
-
-
-REPORT_FORMAT = """Status: {status}
-Song id: {id}
-Br: {br}
-Download: {url}
-MD5: {md5}"""
-
-
[email protected]_natural_language(only_to_me = False)
-async def fk_tx_app_cloudmusic(session: nonebot.NLPSession):
- rich_message = [x for x in session.ctx['message'] if x.get('type') == 'rich']
-
- if not rich_message:
- return
-
- rich_message = rich_message[0]['data']['content']
-
- if '网易云音乐' not in str(rich_message):
- return
-
- if 'music' not in str(rich_message):
- return
-
- data = loads(unescape(rich_message))
-
- URL = data['music']['jumpUrl']
- rep = URL.split('/')
- wid = rep[4]
-
- url = f'https://api.imjad.cn/cloudmusic/?type=song&id={wid}&br=320000'
- print(url)
-
- dc = json.loads(request_api(url))
-
- await session.send(
- REPORT_FORMAT.format(
- status = dc["code"],
- id = dc["data"][0]["id"],
- br = dc["data"][0]["br"],
- url = dc["data"][0]["url"],
- md5 = dc["data"][0]["md5"],
- )
- )
-
-
[email protected]_natural_language(only_to_me = False)
-async def cloudmusic_link(session: nonebot.NLPSession):
- share_message = [x for x in session.ctx['message'] if x.get('type') == 'share']
-
- if not share_message:
- return
-
- share_message = share_message[0]['data']['url']
-
- if 'music.163.com' not in str(share_message):
- return
-
- rep = share_message.replace('=', '/')
- rep = rep.replace('&', '/')
- wid = rep[4]
-
- url = f'https://api.imjad.cn/cloudmusic/?type=song&id={wid}&br=320000'
- print(url)
-
- dc = json.loads(request_api(url))
-
- await session.send(
- REPORT_FORMAT.format(
- status = dc["code"],
- id = dc["data"][0]["id"],
- br = dc["data"][0]["br"],
- url = dc["data"][0]["url"],
- md5 = dc["data"][0]["md5"],
- )
- )