网易互客Mac版
网易互客Mac版:下载地址
现在越来越多的服务都只在web端提供,很少有人去开发原生的桌面应用。但桌面应用依然有它的便捷性,有什么办法把web服务封装成桌面应用呢?
以网易互客的SaaS服务为例,在浏览器中使用,通常会被其他tab干扰,或者容易误关。如果可以把它变成一个桌面应用就会方便许多。Python的UI框架有很多,Tkinter是最轻量级的,但它不支持WebEngine,所以我们选择PyQt来实现。首先通过homebrew安装PyQt:
1 | brew install pyqt |
然后通过简单的代码封装一个web页
1 | #!/usr/bin/python3 |
接着需要把它打包成一个可以随处运行的可执行程序。需要用到Pyinstaller,通过pip安装即可。
1 | pip install pyinstaller |
安装完以后,通过以下命令来打包
1 | sudo pyinstaller --windowed --icon huke.icns --osx-bundle-identifier com.netease.huke --onedir huke.py --name 网易互客 |
这样在dist目录下就可以找到最后的可执行程序了
如果你在高分辨率的屏幕上打开这个程序,会发现字体非常模糊。需要在spec文件中加上如下配置
然后重新对spec文件打包,最后的运行效果