Rumah >pembangunan bahagian belakang >Tutorial Python >Buat pemasang boleh laku untuk tingkap dengan skrip python.

Buat pemasang boleh laku untuk tingkap dengan skrip python.

Patricia Arquette
Patricia Arquetteasal
2024-10-27 00:44:31727semak imbas

Satu lagi entri teknikal.

Konteks pantas, saya mempunyai belakang dan hadapan (sama ada beta) dalam python (kelalang). Saya menaikkan lokasi dalam penyemak imbas.

Belakang terangkat pada port larian kelalang --port=5001
Bahagian hadapan dinaikkan pada larian kelalang port --port=5000

Apl berjalan dalam penyemak imbas.

http://localhost:5000/

Asas, tiada yang baharu setakat ini.

Saya perlu memasang apl ini pada mesin lain. Pemikiran 1 memasang python dan semua perpustakaan dan kebergantungan dan... tidak.

Ini datang Copilot untuk menyelamatkan sekali lagi. Saya akan menggesa anda dengan petua untuk memasang skrip python ini sebagai boleh laku untuk tingkap.

Saya mengesyorkan beberapa perkara yang menarik.

Pertama sekali, sediakan persekitaran maya, kebergantungan dipasang, pastikan semuanya berfungsi dengan betul secara setempat dan...

Mula-mula gunakan pyinstaller untuk menjana fail .exe apl saya.

pemasang pip pasang

Dalam setiap direktori yang saya jalankan:

/projek saya/belakang
/my-project/frontend

pyinstaller --onefile --name backend app.py

Di sini saya terpaksa menentukan lulus templat sebagai parameter, kerana ia memberikan ralat jynga2

pemasang py --onefile --name frontend --add-data
"templates;templates" app.py

Contoh:
Crear instaladores ejecutables para windows con scripts en python.

Langkah seterusnya, pasang Inno Setup untuk menjana pemasang.

web - Persediaan Inno

Nah, saya terpaksa menjanjikan sesuatu juga untuk mempunyai asas, kerana saya tidak tahu cara menulis skrip atau sintaks persediaan Inno.

[Setup]
AppName=My Awesome APP 
AppVersion=1.0
DefaultDirName={pf}\MyAwesomeAPP 
DefaultGroupName=My Awesome APP
OutputBaseFilename=MyAwesomeAPP
Compression=lzma
SolidCompression=yes

[Files]
; Incluir todos los archivos del proyecto
Source: "C:\Users\url-a-tu-proyecto\*"; DestDir: "{app}"; Flags: recursesubdirs createallsubdirs
; Incluir los ejecutables generados por pyinstaller
Source: "C:\Users\url-a-tu-proyecto\frontend\dist\frontend.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\url-a-tu-proyecto\backend\dist\backend.exe"; DestDir: "{app}"; Flags: ignoreversion

[Icons]
Name: "{group}\My Awesome APP"; Filename: "{app}\frontend.exe"
Name: "{group}\My Awesome APP"; Filename: "{app}\backend.exe"

[Run]
; Ejecutar el backend
Filename: "{app}\backend.exe"; Flags: nowait
; Ejecutar el frontend
Filename: "{app}\frontend.exe"; Flags: nowait

Ini adalah struktur asas saya.

Kompil, tunggu beberapa minit... dan output akan dijana.

Crear instaladores ejecutables para windows con scripts en python.

Dan inilah pemasang pertama :D

Pada mulanya ia jelas tidak berfungsi... tetapi 16 ujian kemudian, apl itu terus berjalan. Skrip berjalan...

Crear instaladores ejecutables para windows con scripts en python.

Dan daripada penyemak imbas saya, saya boleh mengakses apl saya.

Crear instaladores ejecutables para windows con scripts en python.

Perkara yang menarik tentang soalan ini, alatan! Jelas sekali. Apa yang saya suka, saya mendapati ia cepat dan mudah untuk menggunakan persediaan inno, saya belajar menangani beberapa isu konfigurasi pyinstaller, seperti bendera untuk templat... ralatnya sangat pelik :P

Dan penggunaan teknologi baru dan ular sawa sentiasa menyenangkan...

Seterusnya mungkin beberapa apl desktop dengan skrip ini, untuk mengoptimumkan sedikit saiz akhir, seni bina fail dan jelas bahawa terminal tidak berjalan secara langsung dan langsung, dengan mesej daripada persekitaran pembangunan dan perlu masuk ke localhost daripada penyemak imbas ! : panik

Atas ialah kandungan terperinci Buat pemasang boleh laku untuk tingkap dengan skrip python.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn