Python 3中 mp3play module 的使用

发布于:2022-12-19 ⋅ 阅读:(369) ⋅ 点赞:(0)

前言

mp3play 是一个仅适用于 Python 2的库。由于代码简单,功能单一,又着实好用,所以我就打算尝试略略修改一下源代码,使其可在 Python 3调用。本文是一个记录。


1 查看 PyPI

mp3play module 在 PyPI 上的主页很简单,内容也很少。
在这里插入图片描述
这么一个停更的库还需要学习吗?没办法,简单好用。

先安装 mp3play module 到 Python 2: pip install mp3play 这是可正常调用的。
查看源文件(以我路径为例):C:\Python27\Lib\site-packages\mp3play
在这里插入图片描述

再安装 mp3play module 到 Python 3: pip install mp3play
查看源文件:… \Lib\site-packages\mp3play 这个文件夹里的两个脚本是后面操作的目标。


2 修改源代码

  1. 使用 2to3.py 进行代码转换(略)。
    在这里插入图片描述

  2. 转换结果就是 init.py 并无转换提示,反倒是另一脚本 windows.py 出现了提示,所以仅需对该文件修改即可。

  3. 针对提示进行修改一:print 'Error %s for "%s": %s' % (str(err), txt, buf) 改成 print(…)

  4. 保存后,尝试 import mp3play,报错。这里未能抓图。

  5. 修改二:原代码 errorcode = self.w32mci(str(command), buffer, 254, 0),修改后是两行:

command = str(command).encode("ascii")    # ascii 码可以,utf-8 也可以,总之需要编码
error_code = self.w32mci(command, buffer, 254, 0)

6.保存文件后,尝试 import mp3play,完美!


3 参考

  1. 【pip command】之 pip install
  2. python3中mp3play库如何正确使用?

总结

在这里插入图片描述




网站公告

今日签到

点亮在社区的每一天
去签到