בירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת
-
@יצחק-בר אכתוב בקצרה מקוה שתבין.
פתח את שורה הפקודה (CMD) תקליד:pip install auto-py-to-exe
אחרי ההתקנה תקליד:
auto-py-to-exe
ייפתח לך חלונית ובו תוכל לבחור את קובץ הסקריפט שלך ולהמיר את זה ל-EXE.
אפשרות נוספת יותר נפוצה ופופולארית:
פתח את שורה הפקודה (CMD) בתיקייה שם מופיע הסקריפט שכתבת, ותקליד שם:pip install pyinstaller
אחרי ההתקנה תקליד (תחליף את
SCRIPT.py
בשם של הסקריפט שלך):pyinstaller --onefile SCRIPT.py
הקובץ שנוצר יהיה בתיקיית dist
-
-
-
@צבי-מחשבים כתב בבירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת:
@תותחוביץ זה כנראה קשור לאיך אתה מייבא את קבצי האודיו והתמונה ברמת המיקום ( PATH )
כשזה מקומפל הנתיב משתנה, תשתדל לתת מיקום מלא .אני לא כותב את הנתיב לקובץ אלא בוחר קובץ מסוים מהמחשב ומאשר
-
@תותחוביץ כתב בבירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת:
@צבי-מחשבים כתב בבירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת:
@תותחוביץ זה כנראה קשור לאיך אתה מייבא את קבצי האודיו והתמונה ברמת המיקום ( PATH )
כשזה מקומפל הנתיב משתנה, תשתדל לתת מיקום מלא .אני לא כותב את הנתיב לקובץ אלא בוחר קובץ מסוים מהמחשב ומאשר
הכנסת את הקבצים לתוך התיקייה של הקובץ exe?
-
@יצחק-בר כתב בבירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת:
@תותחוביץ כתב בבירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת:
@צבי-מחשבים כתב בבירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת:
@תותחוביץ זה כנראה קשור לאיך אתה מייבא את קבצי האודיו והתמונה ברמת המיקום ( PATH )
כשזה מקומפל הנתיב משתנה, תשתדל לתת מיקום מלא .אני לא כותב את הנתיב לקובץ אלא בוחר קובץ מסוים מהמחשב ומאשר
הכנסת את הקבצים לתוך התיקייה של הקובץ exe?
ברורעריכה: פאדיחה שלי צודק זאת הייתה הבעיה -
@אלישי כתב בבירור | אחרי שכתבתי סקריפט ואני רוצה לייצא את זה לקובץ רגיל איך עושים זאת:
אפשרות נוספת יותר נפוצה ופופולארית:
פתח את שורה הפקודה (CMD) בתיקייה שם מופיע הסקריפט שכתבת, ותקליד שם:pip install pyinstaller
אחרי ההתקנה תקליד (תחליף את SCRIPT.py בשם של הסקריפט שלך):
pyinstaller --onefile SCRIPT.py
הקובץ שנוצר יהיה בתיקיית dist
כדאי גם להוסיף את הדגל
--noconsol
אני אישית מקמפל את הקוד עם האפשרות השניה עם הקונסול, רואה שהכל עובד תקין ואין שום שגיאות ואז מקמפל שוב עם הדגל הנ"ל
-
@תותחוביץ לא יודע אני ממש מתחיל בתחום הזה אבל שאלתי את gpt וזה מה שהוא ענה לי
עריכה ראיתי שמאוד קשה לקרוא את הצילום מסך אז הוספתי את זה
הטמעה (embedding) של קבצים בתוך קובץ ה-EXE
כשאתה יוצר קובץ exe בעזרת PyInstaller או כלי דומה – אפשר להכניס לתוכו גם תמונות, סאונדים ושאר קבצים כך שלא תצטרך להחזיק תיקיות נפרדות.איך עושים את זה עם PyInstaller:
- השתמש בפקודה הבאה ליצירת קובץ EXE:
pyinstaller --onefile --add-data "images/logo.png;images" --add-data "sounds/click.wav;sounds" main.py
הסבר:
--onefile = יוצר קובץ exe יחיד.--add-data = מוסיף קבצים לקובץ ה־exe.
הפורמט: "נתיב_לקובץ;נתיב_יעד_בתוך_EXE"
אם אתה על Windows: השתמש ב-; (סימן נקודה-פסיק)
אם אתה על Mac/Linux: השתמש ב-: (סימן נקודתיים)
לדוגמה:
--add-data "assets/bg.jpg;assets"
--add-data "audio/music.mp3;audio"
2. בתוך הקוד שלך – גש לקבצים עם sys._MEIPASS:import sys
import osdef resource_path(relative_path):
try:
base_path = sys._MEIPASS # כשמריצים EXE
except AttributeError:
base_path = os.path.abspath(".") # כשמריצים רגיל מ-Python
return os.path.join(base_path, relative_path)
ואז תשתמש בזה ככה:
image_path = resource_path("images/logo.png")
sound_path = resource_path("sounds/click.wav")
טיפ נוסף:
אם יש לך הרבה קבצים בתיקייה, אתה יכול להוסיף תיקייה שלמה:--add-data "images;images"
--add-data "sounds;sounds"
רוצה שאעזור לך לבנות את הפקודה המדויקת לקבצים שלך? תשלח לי:את שם הקובץ הראשי (main.py או אחר)
אילו תיקיות של מדיה יש (תמונות, סאונד, וידאו וכו')
ואני אחזיר לך בדיוק את הפקודה והקוד.
-
@יוסף-אלחנן מה זה מוסיף לי הקמפול השני?