Python Uygulamalarını Kolayca Dağıtmak İçin PyInstaller Kullanımı
PyInstaller ne için kullanılır?
PyInstaller sizin tarafınızdan yazılan bir Python betiğini okur. Kodunuzu yürütmek için betiğinizin ihtiyaç duyduğu her diğer modülü ve kütüphaneyi keşfetmek için kodunuzu analiz eder. Ardından, bunların hepsinin kopyalarını toplar - etkin Python yorumlayıcısı dahil!
Python’u paketlemek için neden Pyinstaller kullanılmalıdır?
PyInstaller, Python kodunu çeşitli işletim sistemleri için bağımsız yürütülebilir uygulamalara paketlemek için kullanılır. Bir Python betiği alır ve tüm gerekli bağımlılıkları içeren tek bir yürütülebilir dosya üretir ve bu dosya Python yüklü olmayan bilgisayarlarda çalıştırılabilir. Bu, Python ve gereken modüllerin kullanıcının sisteminde yüklü olmasını gerektirmediği için Python uygulamalarının kolay dağıtımı ve dağıtımına olanak tanır. Ek olarak, PyInstaller ayrıca tek dosyalı yürütülebilirler oluşturmak için de kullanılabilir, bu da uygulamanın dağıtımını daha da kolaylaştırabilir, kullanıcı sadece tek bir dosya indirmesi yeterli olacaktır.
PyInstaller Nasıl Kurulur?
PyInstaller, düzenli bir Python paketi olarak mevcuttur. Yayınlanan sürümler için kaynak arşivleri PyPi adresinden elde edilebilir, ancak en son sürümü pip kullanarak kurmak daha kolaydır:
C:\> pip install pyinstaller
Mevcut PyInstaller kurulumunu en son sürüme yükseltmek için kullanın:
C:\> pip install --upgrade pyinstaller
C:\> pip install https://github.com/pyinstaller/pyinstaller/tarball/
PyInstaller kullanarak nasıl bir EXE oluşturulur
Ayrıntılı paketleme adımlarını açıklamak için tek bir python dosyasını örnek olarak alacağız. aspose.cells kurduktan sonra Python 3.11.0 örnek olarak alalım.
- örnek.py adında bir python örnek dosyası oluşturun.
import os from jpype import * __cells_jar_dir__ = os.path.dirname(__file__) addClassPath(os.path.join(__cells_jar_dir__, "aspose-cells-23.1.jar")) addClassPath(os.path.join(__cells_jar_dir__, "bcprov-jdk15on-160.jar")) addClassPath(os.path.join(__cells_jar_dir__, "bcpkix-jdk15on-1.60.jar")) addClassPath(os.path.join(__cells_jar_dir__, "JavaClassBridge.jar")) import jpype import asposecells jpype.startJVM() from asposecells.api import Workbook, FileFormatType, CellsHelper print(CellsHelper.getVersion()) workbook = Workbook(FileFormatType.XLSX) workbook.getWorksheets().get(0).getCells().get("A1").putValue("Hello World") workbook.save("output.xlsx") jpype.shutdownJVM()
- c:\app adında bir klasör oluşturun ve örnek.py (ekli) dosyasını c:\app klasörüne kopyalayın.
- Komut isteminizi açın ve pyinstaller example.py komutunu çalıştırın.
C:\app> pyinstaller example.py
- Jarları(c:\Python311\Lib\site-packages\asposecells\lib klasöründe mevcuttur) c:\app klasörüne kopyalayın. (aspose-cells-xxx.jar, bcprov-jdk15on-160.jar, bcpkix-jdk15on-1.60.jar, JavaClassBridge.jar)
- Dosyayı örnek.spec ekini ekleyerek düzenleyin.
- Komut istemi penceresinde pyinstaller example.spec komutunu çalıştırın.
C:\app> pyinstaller example.spec
- Dizini C:\app\dist\örnek olarak değiştirin ve example.exe dosyasını bulacaksınız.