Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.
Chuyển đổi PyQt sang EXE trong PyQt
Trong bài viết này, bạn sẽ học cách chuyển đổi một ứng dụng PyQt thành file chương trình thực thi (EXE) trên hệ điều hành Windows. Việc chuyển đổi này rất hữu ích khi bạn muốn phân phối ứng dụng của mình cho người dùng cuối mà không cần họ phải cài đặt Python hay các thư viện liên quan. Bài hướng dẫn sẽ hướng dẫn bạn từng bước sử dụng PyInstaller để tạo file EXE từ mã nguồn PyQt, giúp bạn có được ứng dụng độc lập, dễ dàng cài đặt và sử dụng.
Chúng ta sẽ chuyển đổi chương trình Editor thành một file thực thi trên Windows sử dụng PyInstaller. Dưới đây là cấu trúc thư mục của chương trình Editor:
├── assets | ├── editor.png | ├── exit.png | ├── new.png | ├── open.png | ├── redo.png | ├── save.png | └── undo.png └── main.py
Trong dự án này:
- Thư mục
assets
chứa tất cả các hình ảnh mà chương trình sử dụng. - File
main.py
chứa mã nguồn của chương trình.
Các bước chuyển đổi PyQt sang EXE
Bước 1: Kích hoạt môi trường ảo (virtual environment)
Trước tiên, bạn cần kích hoạt môi trường ảo mà chương trình PyQt của bạn đang chạy. Nếu bạn không sử dụng môi trường ảo, PyInstaller có thể tạo ra một file thực thi có kích thước lớn vì nó sẽ bao gồm tất cả các gói đã cài đặt trên máy tính của bạn.
Bài viết này được đăng tại [free tuts .net]
Bước 2: Cài đặt PyInstaller
Sử dụng lệnh pip sau để cài đặt PyInstaller:
pip install pyinstaller
PyInstaller có rất nhiều tùy chọn, nhưng trong hướng dẫn này, chúng ta sẽ tập trung vào các tùy chọn thường dùng nhất.
Bước 3: Chuyển đổi chương trình Editor thành file thực thi
Sử dụng lệnh sau để chuyển đổi chương trình Editor thành file EXE:
pyinstaller main.py --noconsole --add-data "assets;assets" --icon="assets/editor.png" --name editor --noconfirm
Khi chạy lệnh này thành công, bạn sẽ thấy PyInstaller tạo ra các thư mục và file mới bao gồm: build
, dist
và editor.spec
:
├── assets | ├── editor.png | ├── exit.png | ├── new.png | ├── open.png | ├── redo.png | ├── save.png | └── undo.png ├── build | └── editor ├── dist | └── editor ├── editor.spec └── main.py
Bên trong thư mục dist/editor
, bạn sẽ tìm thấy file editor.exe. Để chạy chương trình, bạn chỉ cần nhấp đúp vào file này.
Giải thích các tùy chọn trong lệnh pyinstaller
--noconsole
: Ẩn cửa sổ console khi chương trình khởi chạy.--add-data "assets;assets"
: Sao chép thư mụcassets
vào thư mụcdist/editor
để chương trình có thể tham chiếu và hiển thị hình ảnh đúng cách. Định dạng của tùy chọn--add-data
là SRC;DEST. Nếu bạn muốn sao chép nhiều thư mục, bạn có thể sử dụng nhiều tùy chọn--add-data
.--icon="assets/editor.png"
: Chỉ định biểu tượng cho cửa sổ chính của chương trình.--name editor
: Đặt tên cho chương trình, trong trường hợp này là editor. Nếu bạn bỏ qua tùy chọn này, PyInstaller sẽ sử dụng tên của file Python (ví dụ:main
) làm tên chương trình.--noconfirm
: Tùy chọn này sẽ xóa các thư mụcbuild
vàdist
hiện có mà không cần xác nhận nếu bạn chạy lại lệnh này.
Kết bài
Bằng cách sử dụng PyInstaller, bạn có thể dễ dàng chuyển đổi ứng dụng PyQt thành file thực thi (EXE) để phân phối trên Windows mà không cần yêu cầu người dùng cài đặt Python hay các thư viện phụ thuộc. Điều này giúp ứng dụng của bạn trở nên tiện lợi và chuyên nghiệp hơn, đồng thời mang lại trải nghiệm người dùng mượt mà hơn. Với các bước hướng dẫn chi tiết, bạn hoàn toàn có thể tự tạo cho mình một ứng dụng độc lập, sẵn sàng được chia sẻ và sử dụng rộng rãi.