Rumah >pembangunan bahagian belakang >Tutorial Python >Apl Python mendapat ubah suai: pembedahan plastik dengan PyInstaller

Apl Python mendapat ubah suai: pembedahan plastik dengan PyInstaller

WBOY
WBOYke hadapan
2024-02-19 13:24:03534semak imbas

Python 应用华丽转身:PyInstaller 的整形手术

Tetapan pembungkusan tersuai

PyInstaller menyediakan pelbagai pilihan tetapan, membolehkan pengguna menyesuaikan proses pembungkusan mengikut keperluan mereka. Pilihan yang paling biasa digunakan termasuk:

--distpath <path>: 指定生成的应用包路径
--onefile: 将应用打包为单个可执行文件
--noconfirm: 在打包过程中自动回答所有提示
--windowed: 生成带有窗口的应用(仅限 windows)

Optimumkan proses pembungkusan

Melalui parameter baris arahan tertentu, PyInstaller boleh mengoptimumkan proses pembungkusan dan mengurangkan saiz fail yang dijana dan overhed masa jalan:

--optimize <level>: 指定优化级别(0-2)
--strip: 剥离调试信息等不需要的元素
--compres: 压缩字节码和资源文件

Mengendalikan tanggungan

PyInstaller menyepadukan penganalisis pergantungan untuk mengesan dan membungkus python perpustakaan pihak ketiga yang diperlukan dalam persekitaran maya. Walau bagaimanapun, untuk sesetengah perpustakaan yang sukar, anda mungkin perlu menentukan kebergantungan secara manual:

--hidden-import <module>: 包含一个不直接导入但必需的模块
--additional-hooks-dir <path>: 添加额外的挂钩目录来支持特定库

Jana aplikasi mudah alih

PyInstaller menyokong penjanaan aplikasi merentas platform yang boleh berjalan pada sistem pengendalian yang berbeza. Proses pembungkusan boleh disesuaikan untuk platform sasaran tertentu dengan menggunakan pilihan sasaran khusus:

--target <os>: 指定目标平台(例如:win32、linux)
--arch <arch>: 指定目标架构(例如:32bit、64bit)

Isu pembungkusan nyahpepijat

Anda mungkin menghadapi pelbagai masalah semasa proses pembungkusan. Dengan mendayakan mod nyahpepijat, PyInstaller menjana fail log terperinci untuk membantu mendiagnosis masalah:

--debug <all | warnings | errors>: 指定调试级别

Penandatanganan Kod dan Perlindungan Fail

Untuk aplikasi komersial atau aplikasi yang perlu melindungi maklumat sensitif, anda boleh memanfaatkan fungsi tandatangan kod PyInstaller dan mekanisme perlindungan fail:

--sign <certificate>: 使用数字证书对应用进行代码签名
--key <key>: 加密打包文件内容

Demonstrasi Kes

Andaikan kita mempunyai skrip m<strong class="keylink">ai</strong>n.pyPython bernama mai

n.py dan perlu membungkusnya sebagai aplikasi merentas platform:

Arahan pembungkusan:

pyinstaller --onefile --windowed --target linux --arch x64 main.py
Arahan pengoptimuman:

pyinstaller --onefile --optimize 2 --strip --compres main.py
Kendalikan arahan pergantungan:

pyinstaller --onefile --hidden-import numpy main.py
Jana arahan aplikasi mudah alih:

pyinstaller --onefile --target linux --arch x64 main.py
Arahan isu pembungkusan nyahpepijat:

pyinstaller --onefile --debug all main.py

Dengan menguasai penggunaan lanjutan ini, kami boleh memainkan sepenuhnya potensi PyInstaller dan menjana aplikasi Python yang lebih diperkemas, cekap dan merentas platform untuk memenuhi pelbagai keperluan penggunaan. 🎜

Atas ialah kandungan terperinci Apl Python mendapat ubah suai: pembedahan plastik dengan PyInstaller. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:lsjlt.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam