V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Kyouma1002
V2EX  ›  Python

要疯了, pyinstall 打包的 exe,打开总是报错 ModuleNotFoundError: No module named 'jieba'

  •  1
     
  •   Kyouma1002 · 39 天前 · 1852 次点击
    这是一个创建于 39 天前的主题,其中的信息可能已经有所发展或是发生改变。

    几个 AI 都问了一轮,也 Google 过,试了很多种方法,都没解决,崩如溃了,有人能帮帮吗

    1. 用的 windows 虚拟机,全局环境里已经安装了所需的依赖,包括 jieba ,pyinstall 打包 GUI 运行 exe 后,试了 n 次都还是 ModuleNotFoundError: No module named 'jieba'(用虚拟环境时就有这样的问题,才改全局环境,依然有问题)
    2. windows 里只有一个 Python 环境,卸载重装也没用,& "C:\Users\ryanchan\AppData\Local\Programs\Python\Python313\python.exe" -m pip install jieba,完整 python 路径去装也没用
    3. 执行& "C:\Users\ryanchan\AppData\Local\Programs\Python\Python313\python.exe" -m pip show jieba ,都有 jieba 的依赖包信息了,结果 python import jieba 还提示 ModuleNotFoundError: No module named 'jieba',真不知道哪里有问题了,好崩溃
    14 条回复    2025-04-29 19:33:57 +08:00
    kokutou
        1
    kokutou  
       39 天前 via Android   ❤️ 1
    试试 nuitka
    Abbeyok
        2
    Abbeyok  
       39 天前   ❤️ 1
    --collect-all jieba
    cdwyd
        3
    cdwyd  
       39 天前 via Android   ❤️ 1
    临时解决方案的话可以试试把 jieba 复制一份到项目入口文件同目录下试试
    PEax
        4
    PEax  
       39 天前   ❤️ 1
    nuitka
    lsdvincent
        5
    lsdvincent  
       39 天前   ❤️ 1
    spec 里面 Hiddenmodule 需要加入这个包 pyinstaller 就是需要一点点调试
    AllenZ0
        6
    AllenZ0  
       39 天前   ❤️ 1
    使用 .spec 文件配置打包选项,在 hiddenimports 里添加 jieba 包,hiddenimports = ['jieba', *collect_submodlues('jieba'),....]
    tiiis
        7
    tiiis  
       39 天前   ❤️ 1
    --hidden-import jieba
    Kyouma1002
        8
    Kyouma1002  
    OP
       38 天前
    昨晚发现 site-packages 里没有 jieba 的依赖包文件夹,只有元数据文件夹,已经通过手动下载 jieba 依赖包并放置在 site-packages 目录中解决问题了,谢谢各位大佬

    ## 问题原因分析
    你遇到的情况很有趣,你只找到了 jieba-0.42.1.dist-info 文件夹,但没有找到实际的 jieba 模块文件夹。这种情况通常有以下几种可能的原因:

    1. 安装方式问题 :

    - 有时候使用 pip install jieba 安装时,可能由于网络问题或其他原因导致安装不完整,只创建了元数据文件夹(.dist-info ),但没有正确安装实际的模块文件。
    2. 纯 Python 轮子( wheel )安装问题 :

    - jieba 是一个纯 Python 库,在某些情况下,安装过程可能将模块内容放在了不同的位置,或者以不同的方式组织文件。
    3. Python 版本兼容性 :

    - 你使用的是 Python 3.13 ,这是一个相对较新的版本。jieba 可能在这个版本上有一些安装兼容性问题。
    4. 虚拟环境混淆 :

    - 如果你使用了多个 Python 环境或虚拟环境,可能在一个环境中安装了 jieba ,但在另一个环境中使用它。
    5. Windows 和 macOS 环境差异 :

    - 你在 macOS 的 Parallels Windows 虚拟机上工作,这种跨平台环境有时会导致一些特殊的安装问题。
    elltor
        9
    elltor  
       38 天前
    部署 python 老项目更恶心,python 版本高启动不了,低也启动不了,库之间的依赖....
    elltor
        10
    elltor  
       38 天前
    试过了几种编程语言,打包部署还是 go 、java 比较省心,像 python 、node ( js..)这些弱类型语言在程序没有启动之前,你永远不知道会隐藏多少 bug
    lts9165
        11
    lts9165  
       38 天前
    @elltor 启动了之后,依然隐藏着一堆 bug
    sgld
        12
    sgld  
       37 天前
    盲猜虚拟环境问题

    你在虚拟环境里面执行
    where python

    看看用的是全局 python 还是 venv 中的 python

    如果是全局的,那么就 .venv/s.../python.exe -m PyInstaller -F ...

    大概就这样。之前遇到过,不行的话重装下虚拟环境试试
    sgld
        13
    sgld  
       37 天前
    pyinstaller 确实存在一些问题,我内网用的,离线打包基本只能用这个,nuitka 我用不了,没有 wheel

    已经撞了一路的包过来了 hhh
    wyntalgeer
        14
    wyntalgeer  
       37 天前   ❤️ 1
    @Kyouma1002 @livid #8 AI 污染
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5578 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 06:35 · PVG 14:35 · LAX 23:35 · JFK 02:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.