fuo-qqmusic 1.0.14__tar.gz → 1.0.16__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/PKG-INFO +2 -2
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/README.md +6 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic/api.py +5 -16
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic/provider.py +2 -2
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic/schemas.py +4 -4
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic.egg-info/PKG-INFO +2 -2
- fuo_qqmusic-1.0.16/fuo_qqmusic.egg-info/requires.txt +3 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/setup.py +2 -2
- fuo_qqmusic-1.0.14/fuo_qqmusic.egg-info/requires.txt +0 -3
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic/__init__.py +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic/assets/icon.svg +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic/consts.py +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic/excs.py +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic/login.py +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic/provider_ui.py +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic.egg-info/SOURCES.txt +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic.egg-info/dependency_links.txt +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic.egg-info/entry_points.txt +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/fuo_qqmusic.egg-info/top_level.txt +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/setup.cfg +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/tests/test_api.py +0 -0
- {fuo_qqmusic-1.0.14 → fuo_qqmusic-1.0.16}/tests/test_provider.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fuo_qqmusic
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.16
|
|
4
4
|
Summary: feeluown qqmusic plugin
|
|
5
5
|
Home-page: https://github.com/feeluown/feeluown-qqmusic
|
|
6
6
|
Author: Cosven
|
|
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 3.9
|
|
|
15
15
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
16
16
|
Requires-Dist: feeluown>=4.1.13
|
|
17
17
|
Requires-Dist: requests
|
|
18
|
-
Requires-Dist: marshmallow<4.0.0,>=3.0
|
|
18
|
+
Requires-Dist: marshmallow<4.0.0,>=3.13.0
|
|
19
19
|
Dynamic: author
|
|
20
20
|
Dynamic: author-email
|
|
21
21
|
Dynamic: classifier
|
|
@@ -20,6 +20,12 @@ pip3 install fuo-qqmusic
|
|
|
20
20
|
[操作示例](https://github.com/feeluown/feeluown-qqmusic/issues/6)。
|
|
21
21
|
|
|
22
22
|
## changelog
|
|
23
|
+
### 1.0.16 (2026-02-03)
|
|
24
|
+
- 支持更新的 marshmallow 版本
|
|
25
|
+
|
|
26
|
+
### 1.0.15 (2026-01-18)
|
|
27
|
+
- 支持猜你喜欢电台(配合 FeelUOwn v5.0a1 可用)
|
|
28
|
+
|
|
23
29
|
### 1.0.14 (2025-11-27)
|
|
24
30
|
- 尝试修复 url 过期的问题
|
|
25
31
|
|
|
@@ -457,7 +457,7 @@ class API(object):
|
|
|
457
457
|
}
|
|
458
458
|
js = self.rpc(data)
|
|
459
459
|
return js['req_0']['data']
|
|
460
|
-
|
|
460
|
+
|
|
461
461
|
def get_comment(self, comment_id):
|
|
462
462
|
url = api_base_url + f'/base/fcgi-bin/fcg_global_comment_h5.fcg?biztype=1&cmd=8&topid={comment_id}&pagenum=0&pagesize=25'
|
|
463
463
|
res_data = requests.get(url, headers=self._headers)
|
|
@@ -539,28 +539,17 @@ class API(object):
|
|
|
539
539
|
js = self.rpc(payload)
|
|
540
540
|
return js['getMvUrl']['data'][vid]
|
|
541
541
|
|
|
542
|
-
def get_radio_music(self):
|
|
542
|
+
def get_radio_music(self, num=10):
|
|
543
543
|
payload = {
|
|
544
544
|
'songlist': {
|
|
545
545
|
'module': "mb_track_radio_svr",
|
|
546
546
|
'method': "get_radio_track",
|
|
547
547
|
'param': {
|
|
548
|
-
'id': 99,
|
|
549
|
-
'firstplay':
|
|
550
|
-
'num':
|
|
551
|
-
},
|
|
552
|
-
},
|
|
553
|
-
'radiolist': {
|
|
554
|
-
'module': "pf.radiosvr",
|
|
555
|
-
'method': "GetRadiolist",
|
|
556
|
-
'param': {
|
|
557
|
-
'ct': "24"
|
|
548
|
+
'id': 99, # radio id,对应“猜你喜欢”这个电台
|
|
549
|
+
'firstplay': 0,
|
|
550
|
+
'num': num # 单次获取的歌曲数量
|
|
558
551
|
},
|
|
559
552
|
},
|
|
560
|
-
'comm': {
|
|
561
|
-
'ct': 24,
|
|
562
|
-
'cv': 0
|
|
563
|
-
},
|
|
564
553
|
}
|
|
565
554
|
js = self.rpc(payload)
|
|
566
555
|
return js['songlist']['data']['tracks']
|
|
@@ -431,8 +431,8 @@ class QQProvider(AbstractProvider, ProviderV2):
|
|
|
431
431
|
models=[_deserialize(track, QQSongSchema) for track in tracks],
|
|
432
432
|
description='')
|
|
433
433
|
|
|
434
|
-
def
|
|
435
|
-
songs_data = self.api.get_radio_music()
|
|
434
|
+
def current_user_list_radio_songs(self, count):
|
|
435
|
+
songs_data = self.api.get_radio_music(count)
|
|
436
436
|
return [_deserialize(s, QQSongSchema) for s in songs_data]
|
|
437
437
|
|
|
438
438
|
def current_user_list_playlists(self):
|
|
@@ -17,7 +17,7 @@ logger = logging.getLogger(__name__)
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
class BaseSchema(Schema):
|
|
20
|
-
source = fields.Str(
|
|
20
|
+
source = fields.Str(load_default="qqmusic")
|
|
21
21
|
|
|
22
22
|
class Meta:
|
|
23
23
|
unknown = EXCLUDE
|
|
@@ -94,7 +94,7 @@ class QQSongSchema(Schema):
|
|
|
94
94
|
artists = fields.List(fields.Nested("_SongArtistSchema"),
|
|
95
95
|
data_key="singer")
|
|
96
96
|
album = fields.Nested("_SongAlbumSchema", required=True)
|
|
97
|
-
files = fields.Dict(data_key="file",
|
|
97
|
+
files = fields.Dict(data_key="file", load_default={})
|
|
98
98
|
mv = fields.Dict(required=True)
|
|
99
99
|
|
|
100
100
|
@post_load
|
|
@@ -221,9 +221,9 @@ class QQArtistSchema(Schema):
|
|
|
221
221
|
mid = fields.Str(data_key="singer_mid", required=True)
|
|
222
222
|
name = fields.Str(data_key="singer_name", required=True)
|
|
223
223
|
|
|
224
|
-
description = fields.Str(data_key="SingerDesc",
|
|
224
|
+
description = fields.Str(data_key="SingerDesc", load_default="")
|
|
225
225
|
hot_songs = fields.List(
|
|
226
|
-
fields.Nested(_ArtistSongSchema), data_key="list",
|
|
226
|
+
fields.Nested(_ArtistSongSchema), data_key="list", load_default=list
|
|
227
227
|
)
|
|
228
228
|
|
|
229
229
|
@post_load
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fuo_qqmusic
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.16
|
|
4
4
|
Summary: feeluown qqmusic plugin
|
|
5
5
|
Home-page: https://github.com/feeluown/feeluown-qqmusic
|
|
6
6
|
Author: Cosven
|
|
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 3.9
|
|
|
15
15
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
16
16
|
Requires-Dist: feeluown>=4.1.13
|
|
17
17
|
Requires-Dist: requests
|
|
18
|
-
Requires-Dist: marshmallow<4.0.0,>=3.0
|
|
18
|
+
Requires-Dist: marshmallow<4.0.0,>=3.13.0
|
|
19
19
|
Dynamic: author
|
|
20
20
|
Dynamic: author-email
|
|
21
21
|
Dynamic: classifier
|
|
@@ -5,7 +5,7 @@ from setuptools import setup
|
|
|
5
5
|
|
|
6
6
|
setup(
|
|
7
7
|
name='fuo_qqmusic',
|
|
8
|
-
version='1.0.
|
|
8
|
+
version='1.0.16',
|
|
9
9
|
description='feeluown qqmusic plugin',
|
|
10
10
|
author='Cosven',
|
|
11
11
|
author_email='yinshaowen241@gmail.com',
|
|
@@ -29,7 +29,7 @@ setup(
|
|
|
29
29
|
install_requires=[
|
|
30
30
|
'feeluown>=4.1.13',
|
|
31
31
|
'requests',
|
|
32
|
-
'marshmallow>=3.0,<4.0.0'
|
|
32
|
+
'marshmallow>=3.13.0,<4.0.0'
|
|
33
33
|
],
|
|
34
34
|
entry_points={
|
|
35
35
|
'fuo.plugins_v1': [
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|