pyinstaller打包paddleocr

最近在做一个图片水印识别的工具,使用的是paddleocr来完成的。

过程中遇到一个比较坑的点,正常流程打出来的包运行时报错, 但是直接执行py脚本又是没问题的。报错内容如下:

python 复制代码
RuntimeError: `OCR` requires additional dependencies. To install them, run `pip install "paddlex[ocr]==<PADDLEX_VERSION>"` if you're installing `paddlex` from an index, or `pip install -e "/path/to/PaddleX[ocr]"` if you're installing `paddlex` locally

最后在github上找到答案,这里做一下记录:

打包脚本如下:

python 复制代码
import subprocess
import os
import shutil
import sys

cmd = [
    r'C:\Python\python311\python.exe',
    '-m', 'PyInstaller',
    'main.py',  # 主脚本
    '--name', r'TestCheckImageWatermark',  # 工具名
    # '--onefile',  # 是否将包打成一个文件, 注释掉就是不打成一个文件
    # '--windowed',  # 是否开启调试窗口, 注释掉=开启

    '--collect-data', 'paddlex',
    '--copy-metadata', 'ftfy',
    '--copy-metadata', 'imagesize',
    '--copy-metadata', 'imagesize',
    '--copy-metadata', 'lxml',
    '--copy-metadata', 'opencv-contrib-python',
    '--copy-metadata', 'openpyxl',
    '--copy-metadata', 'premailer',
    '--copy-metadata', 'pyclipper',
    '--copy-metadata', 'pypdfium2',
    '--copy-metadata', 'scikit-learn',
    '--copy-metadata', 'shapely',
    '--copy-metadata', 'tokenizers',
    '--copy-metadata', 'einops',
    '--copy-metadata', 'jinja2',
    '--copy-metadata', 'regex',
    '--copy-metadata', 'tiktoken',
    '--add-binary', "C:\Python\python311\Lib\site-packages\paddle\libs;.",
    '--hidden-import', "scipy._cyutility",
    '--add-data', 'D:\pythonScripts\TestCheckImageWatermark\Configs;Configs',
    '-y',
]

subprocess.call(cmd)
相关推荐
leisoo80972 小时前
100GBA股股票数据怎么存ClickHouseRedisMySQLJSON完整对比
大数据·linux·服务器·开发语言·python
WangYan20223 小时前
基于XGBoost与AI的生态—地学多源数据建模:植被与土地利用识别、土壤碳氮空间预测、生物多样性驱动机制、土壤微生物功能预测、生态退化与风险识别
python·机器学习·xgboost
金銀銅鐵5 小时前
[Python] 借助 turtle 逐字展示唐诗《金缕衣》
python
Python大数据分析@7 小时前
使用大模型MCP采集数据,爬虫已经无门槛
python·网络爬虫
quantdash_cc7 小时前
告别自建 Requests/BS4 网页爬虫:基于 QuantDash 搭建零维保的高性能量化行情流水线
开发语言·爬虫·python·pandas·量化·quantdash
65岁退休Coder7 小时前
LangChain v1.3.4 笔记 - 07 补充:链式调用 LCEL
后端·python·langchain
卷无止境8 小时前
FastAPI 部署在 Nginx 后面到底该怎么配
后端·python
半亩码田8 小时前
C#转Python第3.1篇:Python 的 class 没有访问修饰符?面向对象的另一条路
开发语言·python·c#
Wzx1980129 小时前
python沙箱和docker沙箱你选对了吗?
开发语言·python·docker
Python私教9 小时前
签名 URL 刷新导致审批失效?别急着删掉所有 query
python·安全