灵感来自于https://github.com/longweiqiang/MediaCtrl

原理

网易云客户端有快捷键的功能,我们可以写一个程序模拟按键按下,然后在桌面生成程序的快捷方式,这样添加喜欢音乐时就不用打开网易云了,音乐的暂停/播放,上一曲,下一曲也同理

首先导入需要的模块

import win32api
import win32con

模拟按键按下

win32api.keybd_event(17, 0, 0, 0) 
# ctrl键位码是17
win32api.keybd_event(18, 0, 0, 0)  
# alt键位码是18
win32api.keybd_event(72, 0, 0, 0)  
# h键位码是80

这里推荐一个软件 叫做utools,安装插件后直接按 alt+space 然后输入键码,就可以方便的查询键码了

释放按键

win32api.keybd_event(72, 0, win32con.KEYEVENTF_KEYUP, 0)
win32api.keybd_event(18, 0, win32con.KEYEVENTF_KEYUP, 0)
win32api.keybd_event(17, 0, win32con.KEYEVENTF_KEYUP, 0)

程序打包

使用pyinstaler进行打包,同时我们还需要一个爱心形状的图标,来达到美化效果

文件目录如下

在pycharm的terminal使用以下命令pyinstaller -w -D -i D:\py\cloudmusic\like.ico test.py

等待打包完成,在如下目录找到exe

如果双击执行没有效果,可以使用cmd运行exe看看报错信息,我这里运行时报错“import win32api”报“ImportError:DLL load failed:找不到指定的模块”

如下图所示,把xxx\venv\Lib\site-packages\pywin32_system32里的这两个dll文件移到C:\Windows\System32里面就可以运行了

效果展示

最后来一张桌面图

Last modification:July 12th, 2020 at 01:07 am