דילוג לתוכן

עזרה הדדית - Python

88 נושאים 1.3k פוסטים
  • 2 הצבעות
    1 פוסטים
    25 צפיות
    אין תגובות
  • 0 הצבעות
    9 פוסטים
    60 צפיות
    25802

    @דניאל-ביטון בגדול פעלות שאינם קשורות כלל למערכת ההפעלה או לקבצים במחשב...

    היא סך הכל אמורה לנהל מלאי מוצרים במחסן או משהו דומה... היא סה"כ מקושרת לקובץ TXT אחד מסויים ולקובץ JSON אחד כנ"ל

  • בקשת עזרה תוכנה למיון ספרים!

    38
    2 הצבעות
    38 פוסטים
    773 צפיות
    א

    @אלף-שין

    עדכון יום שלישי בבוקר:
    בס"ד @האדם-החושב עשה סקריפט אחד מסודר ומדויק מאד!
    הסקריפט כולל 4 שלבים למיון!
    נסו ותהנו!

    import os from pymupdf import pymupdf import re import PyPDF2 import shutil from tkinter import Tk, filedialog def metadata(file_path): pdf = PyPDF2.PdfReader(file_path) meta_data = {} for key in pdf.metadata.keys(): meta_data[key] = pdf.metadata[key] for key, value in meta_data.items(): if isinstance(value, str) and metadata_word.lower() in value.lower(): return True return False def text_recognition(file_path): doc = pymupdf.open(file_path) page = doc[0] text = page.get_text() if (text.find("ww") != -1 or text.find("WW") != -1 or text.find("wbook") != -1 or text.find("WBOOK") != -1 or text.find("org") != -1 or re.search(r"https?://\S+", text) is not None): return True return False def is_hebrewbooks_file_ocr_1(file_path): doc = pymupdf.open(file_path) page = doc[0] ocr_text = page.get_textpage_ocr(tessdata=r"C:\Program Files\Tesseract-OCR\tessdata").extractText() if (ocr_text.find("www") != -1 or ocr_text.find("WWW") != -1 or ocr_text.find("wbook") != -1 or ocr_text.find("WBOOK") != -1 or ocr_text.find("org") != -1 or re.search(r"https?://\S+", ocr_text) is not None): return True return False def is_hebrewbooks_file_ocr_2(file_path): doc = pymupdf.open(file_path) page = doc[0] text = page.get_text() if (text.find("ww") != -1 or text.find("WW") != -1 or text.find("wbook") != -1 or text.find("WBOOK") != -1 or text.find("org") != -1 or re.search(r"https?://\S+", text) is not None): return True return False def main(): root = Tk() root.withdraw() books_folder = filedialog.askdirectory() global metadata_word metadata_word = "ID" for root, dirs, files in os.walk(books_folder): for file in files: file_path = os.path.join(root, file) if os.path.isfile(file_path) and file_path.endswith('.pdf'): if metadata(file_path): target_dir = "metadata" elif text_recognition(file_path): target_dir = "text recognition" elif is_hebrewbooks_file_ocr_1(file_path): target_dir = "ocr 1" elif is_hebrewbooks_file_ocr_2(file_path): target_dir = "ocr 2" else: continue # Get the relative path from the source directory relative_path = os.path.relpath(file_path, books_folder) target_path = os.path.join(target_dir, relative_path) target_folder = os.path.dirname(target_path) os.makedirs(target_folder, exist_ok=True) shutil.move(file_path, target_path) main()

    והנה מי שרוצה תוכנה מקומפלת להורדה
    [צריך להעתיק את הקישור ידנית [מקש ימני בעכבר על המילה להורדה] להדביק בשורת הכתובת בדפדפן, ולהוריד כוכביות!

    נ"ב: אם מישהוא יודע ויכול, נשמח לשיפור קטן,
    [להוסיף OCR בעברית לסקריפט,
    כדי שהזיהוי יהיה יותר מדויק].

    עדכון: בגלל הסירבול הרב כאן וכל הפוסטים הלא מסודרים וכו',
    פתחתי על זה שרשור חדש ומאיר עיניים כאן.

  • 2 הצבעות
    4 פוסטים
    84 צפיות
    האדם החושבה

    אם אני אוסיף את תוכן התעודה אצלי לוקאלית בצורה הזאת:

    type C:\path\to\netfree.pem>>C:\path\to\bundle.pem

    (כמו שמוסבר באתר של נטפרי)
    ואקמפל (בעזרת auto-py-to-exe) זה אמור להתווסף לקובץ המקומפל?

  • 5 הצבעות
    6 פוסטים
    219 צפיות
    נחמן פלחנ

    @THMHE כתב בשיתוף | קובץ פייתון נחמד שיוצר סיסמא אקראית 6-8 ספרות אותיות גדולות וקטנות תווים מיוחדים:

    @נחמן-פלח ניסיתי פעמיים להשתמש בקובץ, פעם אחת יצר לי סיסמה בלי מספרים, ופעם שנייה יצר ליסיסמה בלי תווים מיוחדים..
    אפשר להגדיר אותו שתמיד יתן לי גם אותיות קטנות וגם גדולות וגם תווים מיוחדים וגם מספרים?

    באיזה השתמשת הראשון או השני או השלישי

  • בירור | החרגת pip מחסימת אינטרנט

    4
    0 הצבעות
    4 פוסטים
    59 צפיות
    מ

    @sivan22 זה לבד יספיק?

    @מיוחד-במינו כתב בבירור | החרגת pip מחסימת אינטרנט:

    באיזה סינון זה נתקע לך?
    ולמה את להחריג ידני, אני חושב שכל פניה שלנו למערכת הסינון עוזרת לכולם

    זה פרוקסי של העבודה

  • בעיה | בעיה| חלונות שגיאה לאחר התקנת פייצארם

    1
    0 הצבעות
    1 פוסטים
    23 צפיות
    אין תגובות
  • הסבר | אני מעוניינת להשתמש בקוד מגיטהב

    6
    0 הצבעות
    6 פוסטים
    124 צפיות
    sivan22S

    @newUserTeck כתב בהסבר | אני מעוניינת להשתמש בקוד מגיטהב:

    @sivan22
    תודה לכל המסייעים במלאכה, אני ממש חדשה בשוק של הAI
    בקשו ממני להוריד פרוייקט מגיט ולחבר אותו למסד הנתונים
    כך ששתי שורות הקוד יענו על הדרישות?!

    אם זה פותר את המשימה למה לא?!

    אני ממש חדשה בשוק של הAI

    מאד ממליץ לראות את הפוסט הזה

    באופן ספציפי למשימה שלך (אני מבין שמדובר באודיו) מומלץ במיוחד הקורס הבא: https://huggingface.co/learn/audio-course/chapter0/introduction

    בעולם של קוד פתוח בAI הכל מתנקז לאתר huggingface, וחובה להכיר אותו!
    כמו כן מאד מומלץ להכיר היטב את הספרייה datasets לטיפול בנתונים, וtransformers לשימוש במודלים מאומנים מראש.

    כמו"כ אם מישהו יודע לענות לי איך לחבר למסד הנתונים

    לא תיארת מה המבנה של הנתונים אז קשה מאד לענות על השאלה.

    מעבר לזה לא הבנתי אם רק נדרש שימוש במודל, או גם לאמן אותו.

  • 3 הצבעות
    6 פוסטים
    200 צפיות
    האדם החושבה

    @איש-אמת למי שרוצה למיין קבצים לפי תאריך.
    אולי בהמשך אני אוסיף גם שהסקריפט יגדיר את התיקייה כמיקום ברירת המחדל של כרום ווורד.

  • בירור | הרשאות לקלאוד - console cloud

    3
    0 הצבעות
    3 פוסטים
    51 צפיות
    ראובן שבתיר

    @sivan22 כתב בבירור | הרשאות לקלאוד - console cloud:

    פתרון אחר הוא לפתוח חשבון מנהל (כרוך בעלות חודשית, יש תקופת ניסיון) כאן:

    חשבתי על זה
    כרגע יש לי חשבון עסקי אבל בלי אדמין

    @sivan22 כתב בבירור | הרשאות לקלאוד - console cloud:

    הפתרון הכי מתאים לדעתי הוא פשוט לא להעלות את האפליקציה לשום מקום, אלא רק לבנות release ופשוט להוריד אותו כקובץ הרצה.

    זה לא כל כך הבנתי
    אז אני יסביר על המטרה
    אני רוצה לגשת לטלגרם כקליינט
    אני מצליח לגשת לטלגרם ואף מוריד לקלאוד
    מה שאני לא מצליח זה לשלוח את מה שירד לצאט
    בשביל זה אני צריך הרשאות https://www.googleapis.com/auth/chat.spaces.create

  • מדריך | Python Turtle Graphics - סקירה ומדריך

    2
    4 הצבעות
    2 פוסטים
    114 צפיות
    ד

    @ממענדל תודה על המדריך!
    אני כבר הרבה זמן נהנה עם הספרייה הזאת.
    משתף תוכנית שכתבתי:

    import turtle import math as m from time import sleep # יוצר פונקציות sin ו cos שמקבלות מעלות def dsin(n): return m.sin(n*m.pi/180) def dcos(n): return m.cos(n*m.pi/180) screen = turtle.Screen() t = turtle.Turtle() def f(): t.hideturtle() screen.tracer(0) g = min(screen.window_width(), screen.window_height())*0.4 #מגדיר את גודל הכדור dist = 3 #מגדיר את המרחק בין הקוים (במעלות) st = dist/50 #מגדיר את הזמן שלוקח לצייר כל קו t.up() for d in range(270, 89, dist*-1): for i in range(180): x, y = ((dsin(i)*dsin(d)))*g, (dcos(i))*g t.goto(x, y) t.down() t.up() screen.update() sleep(st) t.up() for d in range(270, 89, dist *-1): t.up() for i in range(180): x, y = (dcos(i))*g, (dsin(i)*dsin(d))*g t.goto(x, y) t.down() screen.update() sleep(st) turtle.done() return f()

    סליחה על הקוד המבולגן, אשמח לשמוע את דעת הציבור

  • עזרה | כניסה לכתובת אינטרנט בפייתון

    נפתר
    14
    0 הצבעות
    14 פוסטים
    335 צפיות
    ד

    @ממענדל זה שהיא לא תוכל לתת לך תמיכה בלייב זה משהו אחר, אבל לענות על שאלות.. חופשי!

  • 10 הצבעות
    1 פוסטים
    58 צפיות
    אין תגובות
  • המלצה | ניסיון לבניית תוכנת חיפוש:

    35
    2 הצבעות
    35 פוסטים
    588 צפיות
    מאן דאמר 5מ

    אם אפשר להוסיף מילה על דברי המומחים,
    לדעתי העזרה הגדולה של הבינה היא לא למי שרוצה לקצר הליכים ולבקש שהיא תכתוב עבורו קודים שלמים,
    אלא דוקא לחלץ את הבסיס והעיקרון ולפי זה להתקדם, במקום לנבור בחיפושים שונים באינטרנט אחרי דברים דומים או כמעט דומים או לא דומים בכלל.
    אני למשל נעזרתי ב GPT בפרוייקט גדול של ראיה ממוחשבת (openCV) בפייתון, לצד חיפושים ב stack
    ואמנם אי אפשר לומר שהוא כתב במקומי, אבל נעזרתי רבות ברעיונות שהוא נתן איך לבנות את הלוגיקה של הקוד ואיך לייעל את התהליכים. אפשר לעשות את זה גם בחיפושים ב stack אבל זה הרבה יותר מייגע וארוך ולפעמים גם שם אין פתרון.
    מוגש כנקודה למחשבה ואשמח לחוו"דכם.

  • מדריך | התקנת פייתון וחבילות pip (בדגש לנטפרי)

    3
    10 הצבעות
    3 פוסטים
    253 צפיות
    יום חדש מתחילי

    @sivan22 דרך יותר פשוטה להוסיף את פייתון למשתני הסביבה,
    פשוט להריץ שוב את קובץ ההתקנה שאיתו התקנו את פייתון, ושם לבחור באפשרות הראשונה [Modify] של שינוי ההתקנה, ושם להוסיף את פייתון למשתני הסביבה.
    מצו"ב תמונה:
    614b6896-3418-4b57-adc7-08d98d1b01f3-צילום מסך 2024-05-03 113426.png

  • בקשה | רעיונות לכתיבת תוכנות

    63
    1 הצבעות
    63 פוסטים
    991 צפיות
    האדם החושבה

    @דוד-1 כתב בבקשה | רעיונות לכתיבת תוכנות:

    מה שחשוב לי כן זה תגית ז'אנר. תוכל להוסיף את זה?
    וכן אשמח שתוסיף אם אפשרי, שיטפל רק בטקסט שכתוב בעברית, ולא באנגלית או מספרים.

    הוספתי

    (גם בטקסט מעורב זה אפשרי שיהיה רק את העברית?)

    כן, הוספתי, אם כי בטקסט מעורב סדר המילים באנגלית לא נשמר, וכן מילה שמורכבת מ2 השפות תתהפך.

    וגם שיתמוך בעוד פורמטים של מוזיקה ולא רק MP3 , כגון FLAC וWMA

    לא אפשרי בספריה שעבדתי איתה, אולי בספרייה אחרת.

    import os import eyed3 import re def process_in_folder(folder_path): for root, _, files in os.walk(folder_path): for file_name in files: if file_name.lower().endswith(".mp3"): reverse_tag(os.path.join(root, file_name)) old_path = os.path.join(root, file_name) new_path = os.path.join(root, is_hebrew(file_name.split(".")[0])+".mp3") os.rename(old_path, new_path) def is_hebrew(text): is_heb = bool(re.search(r'[\u0590-\u05FF]+', text)) if not is_heb: return text else: split_txt = text.split() list_heb = [] for i in split_txt: is_heb = bool(re.search(r'[\u0590-\u05FF]+', i)) if is_heb: i = i[::-1] list_heb.append(i) else: list_heb.append(i) reverse_txt = " ".join(list_heb[::-1]) return reverse_txt def reverse_tag(file): audiofile = eyed3.load(file) audiofile.tag.artist = is_hebrew(audiofile.tag._getArtist()) audiofile.tag.album = is_hebrew(audiofile.tag._getAlbum()) audiofile.tag.title = is_hebrew(audiofile.tag._getTitle()) audiofile.tag.genre = is_hebrew(str(audiofile.tag._getGenre())) audiofile.tag.save() folder_path = "" process_in_folder(folder_path)
  • עזרה | kivy עיצוב ופריסה

    5
    0 הצבעות
    5 פוסטים
    102 צפיות
    mefateachM

    @sivan22 טוב התקדמתי מאז הרבה, וכרגע כבר יש לי תצוגה די טובה רק אני לא מבין למה כשאני מקטין את החלון כל הרכיבים לא מתקטנים (כמו באנדרואיד) אלא עולים אחד על השני... (ומה יקרה אם אני ישים את התוכנה במסך יותר קטן..., אני לא כל כך מבין בזה, יכול להיות שגם באנדרואיד זה לא מתקטן אלא שמסך יותר קטן מוגדר dpi שונה שגורם להכל להתקטן, אשמח שתחכים אותי, בכל מקרה זה לא אמור לעלות רכיב מעל רכיב אלא מקסימום להיחתח, מה שחשוב לי זה שזה יעבוד במסכים יותר קטנים (משמעותית!!))
    עוד שאלה קצת פחות קשורה, איך אני יכול הלפעיל משמית asyncio ברקע כדי שהתצוגה לא תיתקע?:

    musics = asyncio.run(telegram_connect.get_new_music())

    תודה!

    כרגע:

    1e2563e8-1d58-488f-87e3-025807c92522-image.png

    וכשאני מקטין..

    4d5b1f86-21ae-440c-a40e-1f951f93911b-image.png

  • בקשה | קובץ תרגילים

    3
    0 הצבעות
    3 פוסטים
    65 צפיות
    a.y.f.A

    @lplp https://www.w3resource.com/python-exercises/
    באנגלית
    ממליץ ביותר

  • בירור | איך להמיר קובץ py ל-exe?

    נפתר
    32
    0 הצבעות
    32 פוסטים
    464 צפיות
    25802

    @ממענדל בדרייב אפשר אבל אתה יכול לנסות את מה שהציע @10110000 יש הגיון רב בדבריו...

  • עזרה | קצת עזרה בפייתון...

    נפתר
    4
    0 הצבעות
    4 פוסטים
    93 צפיות
    Y

    @רפאל-vnkl
    בשמחה
    אין בעד מה!!!!