wei_Y 发表于 2017-3-1 17:57:06

【折腾】PYQT5 --- 网易云音乐(新) 2017/9/20更新(重大更新~) ubuntu支持~歌词支持~

本帖最后由 wei_Y 于 2017-9-20 20:23 编辑

两年前马马虎虎用PYQT搞了个马马虎虎的界面,心血来潮给换换新衣服。
当然不仅仅是换了样子,可扩展上,易读,维护上都比之前好太多。

git地址:

https://github.com/HuberTRoy/MusicPlayer

欢迎star,fork,提问题。不定时更新呦~。


哈哈~,PyQt现在也可以使用<img src=1.jpg>的方便快捷的方式显示图片了。
详情请看widgets/base.py.

2017/9/20 更新:

0. 添加歌词高亮滚动。
1. 优化歌单的响应速度。




2017/9/18 更新:

0. 歌单简介现在可完全阅读。
1. 新增歌曲详细信息的布局-> 功能还未添加。
1.1 图片叠加透明遮罩效果说明:
          创建两个PicLabel.
···
          img1, img2 = PicLabel(), PicLabel()
          # 将img2作为img1的子部件添加到img1,这里可简单使用布局方式。
          img1Layout = VBoxLayout(img1)
          img1Layout.addWidget(img2)
          # 设置img2的背景颜色即可设置遮罩效果。
          # rgba的最后一个参数设置透明度,0-255或百分比。100%为不透明。
          img2.setStyleSheet('QLabel {background-color:
            rgba(0, 0, 0, 50%);}')
···
2. 几处不合理的注释修改~。
3. 由于 ubuntu下可随意拉伸,修复部分拉伸后崩的很厉害的画风。(还有一些崩的不厉害的暂未修复。>_<)



2017/9/7 更新:

0. 添加简单将普通函数变为异步函数的方法。(features/asyncBase.py)
1. 将几个不太需要线程的方法修改为异步方式。
异步方式说明:
···
@toTask
def test(x):

    future = aAsync(requests.get, 'http://www.xxx.com', headers=headers)
    print(x)
    data = yield from future

    print(data)
···
将普通函数用aAsync方法执行即可。
···
for x in range(5):
    test(x)
···

2017/8/18 更新:

0. 添加保存上一次的功能。具体为:
0.0 保存登陆的状态(歌单/昵称/头像). 目前没有用到cookies功能暂未保存cookies.
0.1 保存正在听的歌(歌曲列表. 未保存当前播放歌曲的状态.)。

1. 扩展上: 需实现类里的saveCookies和loadCookies方法。目前需要在类中明确调用.
widget/base.py -> checkFolder提供方便检测所需目录是否存在的装饰器。
```
class Test:
    saveFolder = 'test/test/save.suffix'
    @checkFolder(saveFolder):
    def saveCookies(self):
      pass
      ...
```

2017/8/15 更新:

0. 将头像处方形图片变成圆形图片。
1. 使用方法:
```
from base import PicLabel
picture = PicLabel(url, width, height, mask:filename)
# mask就是显示方法,是个圆形就会显示圆形,是个不规则图形就是不规则图形。
# 传入路径即可。mask不支持网络图片。
```




2017/8/12 更新:

0. 现在可以获取到登陆后的用户收藏及创建的歌单。



2017/8/11 更新:

0. 目前可用手机号登陆。还不可以获取歌单, 仅登陆和头像, 其他功能待更新。详情见下图。
1. 做了<img src=1.jpg>的初步尝试。 多线程(线程池。详情请看base文件.),杜绝卡界面。
使用方法:
···
from base import picLabel
# 支持本地目录和带http(s)的url.
# url必须有,width, height可选.
mypic = picLabel('url', width:int, height:int)
...
···




2017/7/15 更新:

0. 更新搜索API.
1. 修复搜索不能播放的问题。
2. 目前歌曲地址是一个独立的获取url,显得有点慢。



2017/7/14 更新:

0. 修复由于API更改导致的无法播放歌曲问题。
1. 新的API借鉴了-> https://github.com/xiyouMc/ncmbot

2017/7/13 更新:

0. 增加搜索功能。(还不能进行播放。)
1. 代码结构的调整。
2. 其他小功能的微调。





PYQT简单易上手,搭配QML可快速开发一些漂亮的界面。

教程请戳:
QT-庖丁解牛







EXE: 兼容win7 - win10 32/64.
这里是度盘:

**** Hidden Message *****

git地址:

https://github.com/HuberTRoy/MusicPlayer

qq413317226 发表于 2017-3-1 18:12:54

666

~风介~ 发表于 2017-3-1 18:14:59

膜拜weiy大佬!{:10_256:} @康小泡 @joker11111 @不二如是 @欧拉计划 @拈花小仙

wei_Y 发表于 2017-3-1 18:17:09

~风介~ 发表于 2017-3-1 18:14
膜拜weiy大佬! @康小泡 @joker11111 @不二如是 @欧拉计划 @拈花小仙

{:10_282:}介哥你又调皮。

joker11111 发表于 2017-3-1 18:52:29

膜拜weiy大佬,向大佬低头{:10_250:}
这个是真厉害!

逍遥侯 发表于 2017-3-1 18:58:42

111111

zgbjmy2008 发表于 2017-3-1 19:36:39

楼主,你是一个大好人!!

helloing 发表于 2017-3-1 19:50:55

很感谢楼主分享看看

pcwuyu 发表于 2017-3-1 19:50:56

下载下来膜一番

不二如是 发表于 2017-3-1 20:45:06

支持,wei_Y胸弟
广告打得好!
有机会一定介绍qml

李金龙 发表于 2017-3-1 20:56:44

膜拜weiy大佬,向大佬低头

wei_Y 发表于 2017-3-1 21:26:03

本帖最后由 wei_Y 于 2017-3-1 21:31 编辑

不二如是 发表于 2017-3-1 20:45
支持,wei_Y胸弟
广告打得好!
有机会一定介绍qml

{:10_282:}没有用QML,暂时用的QWidget,QML做的确实很棒。(本来有个图片轮播用QWidget较难实现用QML实现测试了,不过发现没有接口就取消了。。)往后更新的话可能会用到QML,这玩意做动画超赞。

DarkmasterSugar 发表于 2017-3-1 21:27:07

我要不要fork一波来玩玩呢

wei_Y 发表于 2017-3-1 21:28:37

DarkmasterSugar 发表于 2017-3-1 21:27
我要不要fork一波来玩玩呢

欢迎fork一波~。共同进步。

master-c 发表于 2017-3-1 22:00:00

666

jerryxjr1220 发表于 2017-3-1 22:29:53

赞!

零度非安全 发表于 2017-3-1 22:36:27

guaidaowas 发表于 2017-3-1 23:09:21


膜拜weiy大佬!

bin132659 发表于 2017-3-2 10:09:09

好牛 试用一下

jackche0214 发表于 2017-3-2 12:29:11

好牛~我要加油了
页: [1] 2 3 4
查看完整版本: 【折腾】PYQT5 --- 网易云音乐(新) 2017/9/20更新(重大更新~) ubuntu支持~歌词支持~