推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
cosven
V2EX  ›  Python

用 Python 3 + PyQt5 撸了一个播放器

  •  8
     
  •   cosven ·
    cosven · Aug 2, 2018 · 16548 views
    This topic created in 3020 days ago, the information mentioned may be changed or developed.

    image

    特性

    使用方法

    # Ubuntu 用户可以依次执行以下命令进行安装
    sudo apt-get install python3-pyqt5  # 安装 Python PyQt5 依赖包
    sudo apt-get install libmpv1        # 安装 libmpv1 系统依赖
    
    pip3 install 'feeluown>=2.0' --user -i https://pypi.org/simple/
    ## 为 feeluown 生成图标( Linux 用户)
    feeluown-genicon   # 生成图标,点击桌面图标就可以运行
    feeluown  # 也可以在命令行中运行
    

    更多效果图和演示视频: https://github.com/cosven/FeelUOwn/wiki/Gallery

    另外一个细节更多的分享帖: https://www.v2ex.com/t/476376

    last but not least

    Supplement 1  ·  Aug 3, 2018

    之前 Linux 上使用的主题和截图中有一点出入,大家好像更喜欢截图这个主题。

    于是暂时发了一个 2.0.1 的版本,在 Linux 上也使用截图中的主题。 之后会再仔细考虑颜值问题,应该会加一个主题切换的功能。

    pip3 install 'feeluown>=2.0.1' --upgrade --user 这样就可以更新到最新版

    Supplement 2  ·  Aug 3, 2018

    非常希望对这个项目感兴趣的新手或者老司机能一起来设计开发这个项目 ~

    在发布之前,我也尝试了一些方法能让大家快速加入和了解项目

    • 一方面进行了大量的文档补全和代码整理优化工作,让新人也能够快速融入开发
    • 另一方面建立一个 Telegram 群聊,方便大家实时沟通,互相学习(主要是讨论项目及 Python 相关的一些认识)
    89 replies  •  2018-08-06 13:45:23 +08:00
    pabupa
    pabupa
    Aug 2, 2018 via Android
    1
    👍
    cosven
    cosven
    OP
    Aug 2, 2018❤️1
    2
    收集了一波收藏,但是却没有评论,心痛。
    早知道应该把标题改成:Python 3 是世界上最好的语言...
    lfzyx
    lfzyx
    Aug 2, 2018
    3
    不错,然鹅我还是用 spotify 好了
    ToT
    ToT
    Aug 2, 2018
    4
    界面很舒服,楼主是自己设计的么?还是 GNOME 的默认样子呀 itunes 的感觉。
    sadddhu
    sadddhu
    Aug 2, 2018
    5
    不错哟, 学习了
    kench
    kench
    Aug 2, 2018 via Android
    6
    赞一个
    congmingB
    congmingB
    Aug 2, 2018
    7
    赞,支持一波。
    最近正在学 PyQt5, 刚学了一些基本的布局、部件等,看的是一些基础的文档,请问楼主进一步界面设计的学习路线?
    先学习一波楼主源码~
    GG668v26Fd55CP5W
    GG668v26Fd55CP5W
    Aug 2, 2018 via iPhone
    8
    好像 itunes 哦
    cosven
    cosven
    OP
    Aug 2, 2018
    9
    @ToT 恩,是自己瞎设计的。这个「设计」诞生的背景是当时我觉得 Qt 组件原生在 macOS 下太难看了,于是瞎设计了这个主题,当时主要参考了 itunes 的结构。

    个人感受:把布局给设计好了,整体就会不错,颜色或者图标等一些东西其次。

    GNOME 下也可以长这样子,这相当于是这个播放器的一个主题。
    YOOHUU
    YOOHUU
    Aug 2, 2018
    10
    很赞的感觉...不过有 fb 了...
    cosven
    cosven
    OP
    Aug 2, 2018❤️1
    11
    @congmingB
    我自己以前学习 PyQt5 的思路主要是实践 + 看文档。

    个人感觉大概的思路是:
    1. 看基础教程和一些例子,了解 PyQt5 能干什么
    2. 然后自己写一个 Hello world 例子
    3. 然后就可以写一些有实际作用的项目了 -> 这时主要是靠搜索 + 模仿教程
    4. 之后基本就可以看着文档写自己想写的东西了;
    这时也可以参加一些其他开源项目,比如这个,哈哈哈
    KaoN
    KaoN
    Aug 2, 2018 via Android
    12
    pyside2 和 pyqt5 比较咋样。。。
    cosven
    cosven
    OP
    Aug 2, 2018
    13
    @congmingB
    这是当时学习的一些笔记,比较很真实记录当时的学习过程。(内容在现在可能没有很大参考价值,思路可能会有)
    cosven
    cosven
    OP
    Aug 2, 2018
    14
    @lfzyx 以前用 spotify 的时候,感觉国内的音乐不是很多?(不确定是不是姿势不太对)
    cosven
    cosven
    OP
    Aug 2, 2018
    15
    @falcon05 恩,这个界面主要是模仿 itunes 瞎弄的
    cosven
    cosven
    OP
    Aug 2, 2018
    16
    @DAPTX4869 fb 是什么呀?之前好像没有听说过,还是说这个简写我没有听说过
    lfzyx
    lfzyx
    Aug 2, 2018
    17
    @cosven 港区就很多
    cosven
    cosven
    OP
    Aug 2, 2018 via iPhone
    18
    @lfzyx 哦,这样纸...
    TOUJOURSER
    TOUJOURSER
    Aug 2, 2018
    19
    咋一看以为是 itunes
    congmingB
    congmingB
    Aug 2, 2018
    20
    @cosven 待我拜读学习一哈。
    cosven
    cosven
    OP
    Aug 2, 2018 via iPhone
    21
    @KaoN 嗯,记忆中,pyside 相比于 pyqt 的好处是它可以商用?
    pyside 中间黄了一段时间,最近又重新被捡起来了,在开发和功能方面,暂时没有看到 pyside 有什么明显优势。
    我也没太关注 pyside 的发展,呜呜呜
    cosven
    cosven
    OP
    Aug 2, 2018 via iPhone
    22
    @congmingB 嗯,配合文档食用更佳,哈哈
    cosven
    cosven
    OP
    Aug 2, 2018 via iPhone
    23
    @TOUJOURSER 看来确实和 itunes 太像了...大家都这么说
    cosven
    cosven
    OP
    Aug 2, 2018
    24
    反思了一下,这个配色和 itunes 的太像了。布局本来也是从 itunes 那里模仿过来的。
    e9e499d78f
    e9e499d78f
    Aug 2, 2018
    25
    楼主做得不错
    cosven
    cosven
    OP
    Aug 2, 2018 via iPhone
    26
    @e9e499d78f 来来来,一起搞!
    580a388da131
    580a388da131
    Aug 2, 2018
    27
    点击可登陆,点了半天没发现可以登录,登录窗口跑后面去了,最后发现,我点成双击了。
    播放列表上面的图片太大了,右侧空劳劳的。
    音乐播放器不都是这种界面了,没觉得跟 iTunes 多像啊。
    cosven
    cosven
    OP
    Aug 2, 2018 via iPhone
    28
    @580a388da131
    猜测你是在 linux 上使用的,截图是我给 macOS 定制的一个主题。
    在 linux 上目前没有使用这个主题,之后会给它加一个主题切换的功能。

    右边空唠唠的话,应该是播放列表没有描述,之后我也想想怎么优化这个 case
    cyrbuzz
    cyrbuzz
    PRO
    Aug 2, 2018❤️4
    29
    3 年前,看到楼主在 OsChina 的帖子,自己仿着楼主撸了个:
    https://github.com/HuberTRoy/NetEase

    1 年前,偶然翻到楼主在 Github 上的仓库,心生羡慕,又做了一个全新版本:
    https://github.com/HuberTRoy/MusicBox

    ai...最初的摸索阶段,踩在了巨人的肩膀上。感谢~。
    580a388da131
    580a388da131
    Aug 2, 2018
    30
    啊,才注意到我的播放界面和你的基本不一样。
    e9e499d78f
    e9e499d78f
    Aug 2, 2018
    31
    @cosven 以前搞过 pyqt,好久没碰了……
    cosven
    cosven
    OP
    Aug 2, 2018 via iPhone
    32
    @580a388da131 嗯,截图是我给 macOS 定制的一个主题,之前有朋友跟我说 你软件 在 mac 好难看,于是当时折腾了一下。

    我稍后加个切换主题的功能 ୧(๑•̀⌄•́๑)૭

    话说你这个是什么桌面呀?我自己只试过 kde plasma 和 gnome
    cosven
    cosven
    OP
    Aug 2, 2018 via iPhone
    33
    @e9e499d78f 哈哈哈,可能工作上很少会用到把
    cosven
    cosven
    OP
    Aug 2, 2018 via iPhone
    34
    @cyrbuzz 哇,cool
    580a388da131
    580a388da131
    Aug 2, 2018
    35
    @cosven 这是 deepin 家里的系统懒得折腾
    cosven
    cosven
    OP
    Aug 2, 2018
    36
    @cyrbuzz 感觉你做的比我的完整很多,棒!
    zkliu6
    zkliu6
    Aug 2, 2018 via Android
    37
    要是能支持 Apple Music 就好了,虽然 itunes 自己就支持但它真的太难用了
    omph
    omph
    Aug 2, 2018
    38
    记得原来是高仿网易云音乐的,还蛮好看,现在怎么回到原始状态了?
    能不能上 css 调调色
    cosven
    cosven
    OP
    Aug 2, 2018
    39
    @omph 可以上调色,其实上面的额截图就是一个例子。之前没有时间弄太多主题,主要精力是在重构,调整代码结构,让新人也能参与开发 ~

    感觉大家对主题的需求还挺多,我这两天抽时间搞一搞
    cosven
    cosven
    OP
    Aug 2, 2018
    40
    @zkliu6 Apple Music,这个我倒是没有考虑过,我记一下,看看有没有可能实现。
    cosven
    cosven
    OP
    Aug 2, 2018
    41
    @580a388da131 哦,这样子,难怪感觉这些图标貌似没有见过。
    Tink
    Tink
    Aug 2, 2018 via iPhone
    42
    666
    cosven
    cosven
    OP
    Aug 3, 2018
    43
    @Tink
    > python3 -c "import base64; print(base64.b64decode(b'dGluay5pbQ=='))"
    tink.im
    cosven
    cosven
    OP
    Aug 3, 2018
    44
    @Tink 膜拜大佬
    omph
    omph
    Aug 3, 2018
    45
    音乐是优雅的,如果播放器很丑,那简直不能忍
    cosven
    cosven
    OP
    Aug 3, 2018
    46
    鉴于大家都说长得不好看,于是 Linux 下默认主题长得不好看,于是发了个新版本 2.0.1

    大家有兴趣可以升级或者安装最新版 cc @omph @580a388da131
    cosven
    cosven
    OP
    Aug 3, 2018
    47
    > Linux 下默认主题长得不好看,于是发了个新版本 2.0.1

    在 2.0.1 中,Linux 下也默认使用 macOS 的主题,也就是长得和上面截图会很像。
    iPhone8
    iPhone8
    Aug 3, 2018
    48
    好厉害,多长时间搞定的?
    chiu
    chiu
    Aug 3, 2018 via Android
    49
    请问,如果想在没有 python 环境或 pyqt 环境的电脑下运行,应该怎么打包应用?
    xiangchen2011
    xiangchen2011
    Aug 3, 2018
    50
    可以可以,很强势
    cosven
    cosven
    OP
    Aug 3, 2018 via iPhone
    51
    @iPhone8 分阶段的,三年前就开始做了。不过后来工作之后,就没啥时间开发了,最近集中的改进了一下 ~
    1daydayde
    1daydayde
    Aug 3, 2018 via iPhone
    52
    赞一个👍
    cosven
    cosven
    OP
    Aug 3, 2018 via iPhone
    53
    @chiu 你是说 windows 吗?

    如果是 linux 和 macOS 的话,可以先安装 python 及其相关依赖,方法也很简单。当然以后精力或者有更多朋友一起开发的话,也可以给这两个平台打包。

    如果是 windows 的话,目前还有点麻烦,个人没有 windows 系统,不太方便之后进行打包和测试。不过大家需求多的话,我近期也会想办法搞一下这个事情,昨天也有朋友说可以帮忙先试试 windows 下打包。
    NullPoint
    NullPoint
    Aug 3, 2018 via Android
    54
    (⁄ ⁄•⁄ω⁄•⁄ ⁄)
    z0z
    z0z
    Aug 3, 2018
    55
    向楼主学习。
    表达一下我的敬意。
    chuanzhangACE
    chuanzhangACE
    Aug 3, 2018 via Android
    56
    厉害厉害,学习一波
    cosven
    cosven
    OP
    Aug 3, 2018 via iPhone
    57
    @iPhone8 其实这东西也不是很复杂,有兴趣可以一起来玩呀。
    KaoN
    KaoN
    Aug 3, 2018
    58
    @cosven pyside2 最近官方接盘了。。所以我就关注了起来。。
    rookiebulls
    rookiebulls
    Aug 3, 2018 via iPhone
    59
    打包后大概有多大呢
    wisej
    wisej
    Aug 3, 2018
    60
    按步骤安装完后(没有报错提示),bash 里输入 feeluown 提示未找到命令.... 系统是 Ubuntu 18.04LTS
    cosven
    cosven
    OP
    Aug 3, 2018
    62
    @rookiebulls 打成什么包之后?没有太明白

    如果是打成 Linux deb 包的话,应该小于 1MiB ;如果是打成 Windows 包的话,目前还没测试过,根据三年前经验估计得有个 80 MiB 左右。
    leavic
    leavic
    Aug 3, 2018
    63
    这是我见过最漂亮的 qt 界面
    cyrbuzz
    cyrbuzz
    PRO
    Aug 3, 2018
    64
    @cosven
    :kissing_heart:
    qdpoboy
    qdpoboy
    Aug 3, 2018
    65
    厉害了,手动点赞
    cosven
    cosven
    OP
    Aug 3, 2018
    66
    @cyrbuzz :tada:
    cosven
    cosven
    OP
    Aug 3, 2018
    67
    @leavic 🙈 谢谢夸奖
    SbloodyS
    SbloodyS
    Aug 3, 2018
    68
    界面挺舒服的~
    yprisoner
    yprisoner
    Aug 3, 2018 via Android
    69
    不错不错,收藏一啵^ 3 ^
    janxin
    janxin
    Aug 3, 2018
    70
    滋瓷
    Twinkle
    Twinkle
    Aug 3, 2018
    71
    文文
    cosven
    cosven
    OP
    Aug 3, 2018
    72
    @Twinkle 🙈
    JackieMe
    JackieMe
    Aug 3, 2018
    73
    Debian sid + XFCE4 装上太丑了,暂时还是先 star 着吧
    cosven
    cosven
    OP
    Aug 3, 2018 via iPhone
    74
    @JackieMe ( ˃᷄˶˶̫˶˂᷅ )羞 我待会自己试一下,看看能不能改进下
    cosven
    cosven
    OP
    Aug 3, 2018
    75
    @JackieMe
    https://github.com/cosven/FeelUOwn/wiki/Gallery#xfce4-%E6%95%88%E6%9E%9C%E9%A2%84%E8%A7%88

    我试了下,还行吧。你可以用上面写的一条命令,更新到最新版试试 ~ 应该会好看很多 ~
    JackieMe
    JackieMe
    Aug 3, 2018 via Android
    76
    @cosven 安装路径也很奇怪,直接在 ~/.local/bin 下干出一个目录自己用,感觉很霸道😳
    YOOHUU
    YOOHUU
    Aug 3, 2018
    77
    @cosven foobar2000,等级低回复不了图片...
    cosven
    cosven
    OP
    Aug 3, 2018
    78
    @JackieMe 这个是 pip3 自动安装的 🙈
    ~/.local 其实是个标准路径的:
    https://www.freedesktop.org/software/systemd/man/file-hierarchy.html#Home%20Directory
    cosven
    cosven
    OP
    Aug 3, 2018 via iPhone
    79
    @DAPTX4869 看了下 foobar,感觉这东西还挺厉害,挺稳定的样子。
    JackieMe
    JackieMe
    Aug 3, 2018 via Android
    80
    @cosven 原来是这样啊,不好意思不好意思,那是我的锅
    ChristopherCray
    ChristopherCray
    Aug 3, 2018
    81
    我觉得下面部分不好看
    cosven
    cosven
    OP
    Aug 3, 2018 via iPhone
    82
    @ChristopherCray 下面那个,感觉左边再宽一点会好看很多
    bytewalk
    bytewalk
    Aug 3, 2018 via iPhone
    83
    大佬
    cosven
    cosven
    OP
    Aug 3, 2018 via iPhone
    84
    @poorcai ( ˃᷄˶˶̫˶˂᷅ )
    Rorysky
    Rorysky
    Aug 3, 2018
    85
    界面不错,不过 🎵这个符号用得太多了;

    有没有插件系统?
    cosven
    cosven
    OP
    Aug 3, 2018❤️1
    86
    @Rorysky 有的,不过现在还写相关文档
    https://github.com/cosven/feeluown-mpris2-plugin

    这是一个例子,这里是插件的加载逻辑,非常简单
    https://github.com/cosven/FeelUOwn/blob/master/feeluown/plugin.py
    cgwh
    cgwh
    Aug 4, 2018 via Android
    87
    赞一个,马克一下
    tanglijun
    tanglijun
    Aug 4, 2018
    88
    牛
    yannnli
    yannnli
    Aug 6, 2018
    89
    666
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1663 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 84ms · UTC 13:04 · PVG 21:04 · LAX 05:04 · JFK 08:04
    ♥ Do have faith in what you're doing.