相对于PyInstaller bundle

时间:2015-12-15 01:16:17

标签: python local pyinstaller

我正在构建一个小应用程序,它将加载到用户的计算机上,它需要查找与特定mp3文件的包相同的目录。这些mp3文件不会与py文件捆绑在一起,因此我不需要sys._MEIPASS路径,只需要捆绑包本身的系统路径。

或者,如果我以错误的方式考虑这个问题,请提供建议。我不熟悉以这种方式构建应用程序。我们需要一个小应用程序来修改用户的特定mp3 id3标签。这些mp3将在他们的本地机器或USB驱动器上。我的想法是将脚本放在mp3所在的位置并运行它。

顺便说一下,这就是我试过的......

    if getattr(sys, 'frozen', False):
        basedir = sys._MEIPASS
    else:
        basedir = os.path.dirname(os.path.abspath(__file__))

    mp3path = basedir + "/test.mp3"

当我在建造之前测试时,它给了我正确的路径:

    /Users/name/path/to/file/test.mp3

当我运行捆绑包时,mp3路径为:

    /var/folders/d8/67z60y2x7c73kk_m0w50w2pr0000gp/T/_MEI9qySOb/test.mp3

当我只使用__file__中的dirname时,路径是我的用户文件夹

    /Users/name/test.mp3

0 个答案:

没有答案