陈海啸 2023-02-16 00:52 采纳率: 0%
浏览 28

playwright用auto-py-to-exe 打包遇到的奇葩问题

auto-py-to-exe 遇到的奇葩问题,主程序调用了一个外部文件为.json格式的配置文件,打包后一起无法正确找到该文件,突然想放在一个文件夹下面试试,加了一个文件夹,把json放入文件夹,不和主程序同在根目录下,就成功了,估计add-data命令默认不能和主程序放在同一层级上面,是不是这样,如果是,请小伙伴们避坑啊~?

  • 写回答

2条回答 默认 最新

  • 菜鸟才能学的更多 2023-02-16 01:09
    关注

    是的,auto-py-to-exe 打包程序使用 PyInstaller 库进行打包,而 PyInstaller 默认会将主程序及其依赖的文件打包为一个单独的可执行文件,这个文件需要包含所有的依赖文件才能正确运行。

    在打包过程中,可以使用 --add-data 参数将需要的外部文件(如你的 .json 配置文件)添加到可执行文件中。如果你的配置文件和主程序不在同一个目录下,你可以将它们放在同一个文件夹中,然后使用 --add-data 参数指定这个文件夹的路径和需要包含的文件,这样就能够正确地将配置文件打包到可执行文件中了。

    例如,假设你的主程序名为 my_program.py,配置文件名为 config.json,你将它们都放在一个名为 my_project 的文件夹中,那么你可以使用以下命令将它们打包为一个可执行文件:

    auto-py-to-exe --onefile --add-data "my_project/config.json;my_project" my_program.py
    

    其中 --add-data 参数指定了需要添加的文件和文件夹路径,语法为 "源文件路径;目标路径",其中目标路径是相对于可执行文件的路径。在本例中,my_project/config.json 是源文件路径,my_project 是目标路径,它表示将 config.json 文件添加到打包后的可执行文件的 my_project 文件夹中。

    注意,在打包过程中,auto-py-to-exe 会将源文件复制到打包文件夹中进行打包,所以在使用 --add-data 参数指定文件路径时,应该使用源文件的相对路径而不是绝对路径。

    评论

报告相同问题?

问题事件

  • 创建了问题 2月16日

悬赏问题

  • ¥15 Mplus跑出来的数据只有原数据的一半
  • ¥15 vue项目添加全局处理解决一些开发问题
  • ¥40 微信小程序前后端交互
  • ¥15 linux安装依赖问题
  • ¥50 数据预处理(大量数据)
  • ¥15 多设备数据融合可视化显示控制
  • ¥15 公众号关键词自动回复超链接
  • ¥18 help me! 希望大家来看看 吉~
  • ¥15 C++显示超限兔子集结
  • ¥15 sql server 2012的下载出错