דילוג לתוכן
0
  • דף הבית
  • חוקי הפורום
  • מדריכים
  • פוסטים אחרונים
  • לא נפתר
  • תגיות
  • פופולרי
  • משתמשים
  • תרומות לאוצריא
  • צור קשר
  • דף הבית
  • חוקי הפורום
  • מדריכים
  • פוסטים אחרונים
  • לא נפתר
  • תגיות
  • פופולרי
  • משתמשים
  • תרומות לאוצריא
  • צור קשר
עיצובים
  • בהיר
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • כהה
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
לוגו אתר

פורום אוצריא

אוצריא - דף הבית
|
קח שותפות בהוספת ספרים
|
תרום לאוצריא
  1. דף הבית
  2. מדריכים ותוכנות עזר לאוצריא
  3. להורדה | תוכנה קטנה למחיקת ראשי התיבות משורת הכותרת באוצריא

להורדה | תוכנה קטנה למחיקת ראשי התיבות משורת הכותרת באוצריא

מתוזמן נעוץ נעול הועבר מדריכים ותוכנות עזר לאוצריא
תוכנות עזרראשי-תיבותאיתור
11 פוסטים 5 כותבים 488 צפיות 7 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
    תגובה
    • תגובה כנושא
    התחברו כדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • מ מענין לשמוע

      כיום יש בעיה באיתור שכל הספרים בהם יש ראשי תיבות לא מופיעים באיתור.
      הדבר כנראה לא יסתדר לפני המעבר לDB, שבינתיים אין לו (או לכל הפחות לא ידוע לי) תאריך ברור.
      כבית חולים מתחת הגשר אני מצרף את הקישור שהביא הרב @יאיר-דניאל לקובץ שפשוט עובר על כל הקבצים ומוחק בהם את הראשי תיבות.
      שימו לב הקובץ הוחלף עקב בעיות, מי שמזהה בעיות שיעדכן.
      להורדת התוכנה.
      מומלץ ללחוץ 'פתח בכרטיסיה חדשה', או ללחוץ על הקישור ורענן את הדף.
      מה התוכנה עושה?
      עוברת על התיקיה בנתיב c:\אוצריא\אוצריא (מי שצריך מקום אחר יכול לשנות בקוד עצמו, קיים בספוילר).
      בודקת בכל הקבצים בתיקיות ותתי תיקיות האם הקובץ מתחיל בסימון <h1>, ואם כן האם יש בו ראשי תיבות (גם " וגם ״), אם באמת כך, היא מוחקת את הראשי תיבות.
      לאחר ההרצה צריך לעדכן את האינדקס, וזה אומר עד כמה שידוע לי למחוק אותו לגמרי ולבנות אותו מחדש, אלא אם כן תשמעו כאן על דרך חדשה בעזר ה'.

      קוד המקור - בספוילר.

      import os
      import glob
       
      def remove_quotes_from_heading(filepath):
          """
          בודק את השורה הראשונה בקובץ טקסט, ואם היא מתחילה ב-<h1> וכוללת ", מוחק את ה-".
          """
          try:
              with open(filepath, 'r+', encoding='utf-8') as file: # או קידוד אחר אם צריך
                  lines = file.readlines()
                  if lines:
                      first_line = lines[0]
                      if first_line.startswith("<h1>") and  '״' in first_line:
                          new_first_line = first_line.replace( '״', '')
                          lines[0] = new_first_line
                          file.seek(0)  # חזרה לתחילת הקובץ
                          file.writelines(lines)
                          file.truncate() # מחיקת שאריות בסוף הקובץ
                          print(f"טופל: {filepath}")
                      if first_line.startswith("<h1>") and  '"' in first_line:
                          new_first_line = first_line.replace( '"', '')
                          lines[0] = new_first_line
                          file.seek(0)  # חזרה לתחילת הקובץ
                          file.writelines(lines)
                          file.truncate() # מחיקת שאריות בסוף הקובץ
                          print(f"טופל: {filepath}")
          except Exception as e:
              print(f"שגיאה בעיבוד {filepath}: {e}")
       
      def process_directory(root_dir):
          """
          עובר על כל הקבצים בתיקיות ותתי התיקיות ומפעיל את הפונקציה remove_quotes_from_heading.
          """
          for filepath in glob.glob(os.path.join(root_dir, '**/*.txt'), recursive=True):
              remove_quotes_from_heading(filepath)
       
      if __name__ == "__main__":
          root_directory = 'C:\\אוצריא\\אוצריא'
          process_directory(root_directory)
          print("הסתיים!")
      

      בדקתי את זה פעמים ועבד לי מצויין. מקוה שכך זה יהיה גם אצלכם אך בלי אחריות...

      Otzaria-BotO
      Otzaria-BotO
      Otzaria-Bot
      כתב ב נערך לאחרונה על ידי
      #2

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

      מה התוכנה עושה?
      התוכנה סורקת את הקבצים בנתיב C:\אוצריא\אוצריא, ובכל תתי התיקיות שבו. היא בודקת את השורה הראשונה בכל קובץ טקסט. אם השורה מתחילה בסימון <h1> (שמציין כותרת) ומכילה ראשי תיבות המסומנים בגרשיים (גם " וגם ״), התוכנה מוחקת את סימני ראשי התיבות הללו מהכותרת.

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

      • remove_quotes_from_heading(filepath): פונקציה זו מקבלת נתיב לקובץ, קוראת את השורה הראשונה שלו, ובודקת אם היא מתחילה ב<h1> ומכילה את סימני הגרשיים. אם כן, היא מחליפה את השורה הראשונה בגרסה ללא הגרשיים וכותבת אותה בחזרה לקובץ.
      • process_directory(root_dir): פונקציה זו מקבלת נתיב לתיקיית שורש (כמו C:\אוצריא\אוצריא), ועוברת באופן רקורסיבי על כל קבצי הטקסט (.txt) שבתוכה ובתיקיות המשנה שלה, ומפעילה עליהם את הפונקציה remove_quotes_from_heading.

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

      קישור להורדה:
      ניתן להוריד את התוכנה דרך הקישור הבא: להורדת התוכנה.

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

      תגובה 1 תגובה אחרונה
      0
      • יאיר דניאלי
        יאיר דניאלי
        יאיר דניאל
        תורם לאוצריא ניהול תוספים
        כתב ב נערך לאחרונה על ידי
        #3

        @י.-פל.
        ה@otzaria-bot ממש השתפר!!!
        אבל הייתי מוסיף לו בפורמפט שהוא לא צריך להגיב על כל דבר (הדיוט קופץ בראש... במיוחד שהוא אפי' לא מקבל לייקים ע"כ...) אלא רק על נושאים שתויגו כבקשה/בקשת מידע/באג וכדו'
        האם אני צודק?

        מ תגובה 1 תגובה אחרונה
        1
        • יאיר דניאלי יאיר דניאל

          @י.-פל.
          ה@otzaria-bot ממש השתפר!!!
          אבל הייתי מוסיף לו בפורמפט שהוא לא צריך להגיב על כל דבר (הדיוט קופץ בראש... במיוחד שהוא אפי' לא מקבל לייקים ע"כ...) אלא רק על נושאים שתויגו כבקשה/בקשת מידע/באג וכדו'
          האם אני צודק?

          מ
          מ
          מענין לשמוע
          כתב ב נערך לאחרונה על ידי מענין לשמוע
          #4

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

          יאיר דניאלי תגובה 1 תגובה אחרונה
          0
          • מ מענין לשמוע

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

            יאיר דניאלי
            יאיר דניאלי
            יאיר דניאל
            תורם לאוצריא ניהול תוספים
            כתב ב נערך לאחרונה על ידי
            #5

            @מענין-לשמוע כתב בתוכנה קטנה למחיקת ראשי התיבות משורת הכותרת באוצריא:

            ראית שזה עובד גם עם כוכביות?

            מה?

            מ תגובה 1 תגובה אחרונה
            0
            • יאיר דניאלי יאיר דניאל

              @מענין-לשמוע כתב בתוכנה קטנה למחיקת ראשי התיבות משורת הכותרת באוצריא:

              ראית שזה עובד גם עם כוכביות?

              מה?

              מ
              מ
              מענין לשמוע
              כתב ב נערך לאחרונה על ידי
              #6

              @יאיר-דניאל
              הקישור שהבאת!!

              תגובה 1 תגובה אחרונה
              1
              • יאיר דניאלי
                יאיר דניאלי
                יאיר דניאל
                תורם לאוצריא ניהול תוספים
                כתב ב נערך לאחרונה על ידי
                #7

                כן, ממש מעניין!

                תגובה 1 תגובה אחרונה
                0
                • מ מענין לשמוע

                  כיום יש בעיה באיתור שכל הספרים בהם יש ראשי תיבות לא מופיעים באיתור.
                  הדבר כנראה לא יסתדר לפני המעבר לDB, שבינתיים אין לו (או לכל הפחות לא ידוע לי) תאריך ברור.
                  כבית חולים מתחת הגשר אני מצרף את הקישור שהביא הרב @יאיר-דניאל לקובץ שפשוט עובר על כל הקבצים ומוחק בהם את הראשי תיבות.
                  שימו לב הקובץ הוחלף עקב בעיות, מי שמזהה בעיות שיעדכן.
                  להורדת התוכנה.
                  מומלץ ללחוץ 'פתח בכרטיסיה חדשה', או ללחוץ על הקישור ורענן את הדף.
                  מה התוכנה עושה?
                  עוברת על התיקיה בנתיב c:\אוצריא\אוצריא (מי שצריך מקום אחר יכול לשנות בקוד עצמו, קיים בספוילר).
                  בודקת בכל הקבצים בתיקיות ותתי תיקיות האם הקובץ מתחיל בסימון <h1>, ואם כן האם יש בו ראשי תיבות (גם " וגם ״), אם באמת כך, היא מוחקת את הראשי תיבות.
                  לאחר ההרצה צריך לעדכן את האינדקס, וזה אומר עד כמה שידוע לי למחוק אותו לגמרי ולבנות אותו מחדש, אלא אם כן תשמעו כאן על דרך חדשה בעזר ה'.

                  קוד המקור - בספוילר.

                  import os
                  import glob
                   
                  def remove_quotes_from_heading(filepath):
                      """
                      בודק את השורה הראשונה בקובץ טקסט, ואם היא מתחילה ב-<h1> וכוללת ", מוחק את ה-".
                      """
                      try:
                          with open(filepath, 'r+', encoding='utf-8') as file: # או קידוד אחר אם צריך
                              lines = file.readlines()
                              if lines:
                                  first_line = lines[0]
                                  if first_line.startswith("<h1>") and  '״' in first_line:
                                      new_first_line = first_line.replace( '״', '')
                                      lines[0] = new_first_line
                                      file.seek(0)  # חזרה לתחילת הקובץ
                                      file.writelines(lines)
                                      file.truncate() # מחיקת שאריות בסוף הקובץ
                                      print(f"טופל: {filepath}")
                                  if first_line.startswith("<h1>") and  '"' in first_line:
                                      new_first_line = first_line.replace( '"', '')
                                      lines[0] = new_first_line
                                      file.seek(0)  # חזרה לתחילת הקובץ
                                      file.writelines(lines)
                                      file.truncate() # מחיקת שאריות בסוף הקובץ
                                      print(f"טופל: {filepath}")
                      except Exception as e:
                          print(f"שגיאה בעיבוד {filepath}: {e}")
                   
                  def process_directory(root_dir):
                      """
                      עובר על כל הקבצים בתיקיות ותתי התיקיות ומפעיל את הפונקציה remove_quotes_from_heading.
                      """
                      for filepath in glob.glob(os.path.join(root_dir, '**/*.txt'), recursive=True):
                          remove_quotes_from_heading(filepath)
                   
                  if __name__ == "__main__":
                      root_directory = 'C:\\אוצריא\\אוצריא'
                      process_directory(root_directory)
                      print("הסתיים!")
                  

                  בדקתי את זה פעמים ועבד לי מצויין. מקוה שכך זה יהיה גם אצלכם אך בלי אחריות...

                  ס
                  ס
                  סנאי
                  כתב ב נערך לאחרונה על ידי
                  #8

                  @מענין-לשמוע לא יותר מתאים להכניס את זה לקטגוריה "מדריכים ותוכנות עזר"?

                  תגובה 1 תגובה אחרונה
                  1
                  • הבל הבליםה הבל הבלים העביר נושא זה מ- אודות התוכנה ב-
                  • מ
                    מ
                    מענין לשמוע
                    כתב ב נערך לאחרונה על ידי
                    #9

                    אולי, אבל זה תוכנה זמנית בלבד...

                    תגובה 1 תגובה אחרונה
                    0
                    • הבל הבליםה
                      הבל הבליםה
                      הבל הבלים
                      צוות פיקוח
                      כתב ב נערך לאחרונה על ידי
                      #10

                      העברתי כבר.

                      תגובה 1 תגובה אחרונה
                      1
                      • יאיר דניאלי
                        יאיר דניאלי
                        יאיר דניאל
                        תורם לאוצריא ניהול תוספים
                        כתב ב נערך לאחרונה על ידי
                        #11

                        @מענין-לשמוע תכתוב ללחוץ רענון בעמוד שנפתח כשלוחצים על הורדת התוכנה

                        תגובה 1 תגובה אחרונה
                        0

                        שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

                        נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                        בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                        הרשמה התחברות

                        • התחברות

                        • אין לך חשבון עדיין? הרשמה

                        • התחברו או הירשמו כדי לחפש.
                        • פוסט ראשון
                          פוסט אחרון