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

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
לוגו מותג
  1. דף הבית
  2. קטגוריות בהרצה
  3. תכנות
  4. בינה מלאכותית - AI
  5. עזרה הדדית - בינה מלאכותית
  6. המלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי

המלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי

מתוזמן נעוץ נעול הועבר עזרה הדדית - בינה מלאכותית
201 פוסטים 40 כותבים 19.3k צפיות 37 Watching
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • עדלאידעע עדלאידע

    @אליה-אליהו כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

    @צבי-מחשבים כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

    @sivan22 כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

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

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

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

    כאן אני אתן פירוט על שלשה כלים כאלו:

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

    השני, עליו אני ממליץ למתקדמים הוא cline - זהו תוסף לVSCODE בקוד פתוח, שנדרש כדי להפעיל אותו מפתח API בתשלום. ניתן להטעין החל מ5$. את המפתח ניתן להשיג לאחר הרשמה כאן.

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

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

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

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

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

    אין ספק שה-AI הוא בשורה, חוסך זמן יקר ומאפשר לי להספיק משימות במהירות ויעילות, מה שהייתי עושה בשבוע איתו בתוך ימים ספורים, אבל יש עדיין הרבה פינות פתוחות. המלצה שלי למפתחים צעירים – גם אם GPT נתן לך פרומפט מושלם שעובד חלק, תקח רגע לעבור עליו, תבין את הקוד, תלמד ממנו. אסור להפסיק ללמוד אף פעם, הבנה אמיתית, יצירתיות ויכולת לנתח בעיות כמו שצריך הן אלו שמבדילות בין מי שמסתמך על כלים לבין מפתח מקצועי באמת שמסמך על נסיון מר .."

    אני למשל לא יודע תיכנות ואצלחתי לפתח תוכנה כמובן בעזרת ה AI

    ואם היית יודע תכנות, היית יכול לעשות אותה הרבה יותר טובה.

    א מנותק
    א מנותק
    אליה אליהו
    כתב נערך לאחרונה על ידי
    #118

    @עדלאידע כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

    @אליה-אליהו כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

    @צבי-מחשבים כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

    @sivan22 כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

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

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

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

    כאן אני אתן פירוט על שלשה כלים כאלו:

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

    השני, עליו אני ממליץ למתקדמים הוא cline - זהו תוסף לVSCODE בקוד פתוח, שנדרש כדי להפעיל אותו מפתח API בתשלום. ניתן להטעין החל מ5$. את המפתח ניתן להשיג לאחר הרשמה כאן.

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

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

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

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

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

    אין ספק שה-AI הוא בשורה, חוסך זמן יקר ומאפשר לי להספיק משימות במהירות ויעילות, מה שהייתי עושה בשבוע איתו בתוך ימים ספורים, אבל יש עדיין הרבה פינות פתוחות. המלצה שלי למפתחים צעירים – גם אם GPT נתן לך פרומפט מושלם שעובד חלק, תקח רגע לעבור עליו, תבין את הקוד, תלמד ממנו. אסור להפסיק ללמוד אף פעם, הבנה אמיתית, יצירתיות ויכולת לנתח בעיות כמו שצריך הן אלו שמבדילות בין מי שמסתמך על כלים לבין מפתח מקצועי באמת שמסמך על נסיון מר .."

    אני למשל לא יודע תיכנות ואצלחתי לפתח תוכנה כמובן בעזרת ה AI

    ואם היית יודע תכנות, היית יכול לעשות אותה הרבה יותר טובה.

    צודק אבל זה היסג בישבילי

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

      @צבי-מחשבים כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

      @sivan22 כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

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

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

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

      כאן אני אתן פירוט על שלשה כלים כאלו:

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

      השני, עליו אני ממליץ למתקדמים הוא cline - זהו תוסף לVSCODE בקוד פתוח, שנדרש כדי להפעיל אותו מפתח API בתשלום. ניתן להטעין החל מ5$. את המפתח ניתן להשיג לאחר הרשמה כאן.

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

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

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

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

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

      אין ספק שה-AI הוא בשורה, חוסך זמן יקר ומאפשר לי להספיק משימות במהירות ויעילות, מה שהייתי עושה בשבוע איתו בתוך ימים ספורים, אבל יש עדיין הרבה פינות פתוחות. המלצה שלי למפתחים צעירים – גם אם GPT נתן לך פרומפט מושלם שעובד חלק, תקח רגע לעבור עליו, תבין את הקוד, תלמד ממנו. אסור להפסיק ללמוד אף פעם, הבנה אמיתית, יצירתיות ויכולת לנתח בעיות כמו שצריך הן אלו שמבדילות בין מי שמסתמך על כלים לבין מפתח מקצועי באמת שמסמך על נסיון מר .."

      אני למשל לא יודע תיכנות ואצלחתי לפתח תוכנה כמובן בעזרת ה AI

      ט מנותק
      ט מנותק
      טופטופיסט
      כתב נערך לאחרונה על ידי
      #119

      @אליה-אליהו כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

      אני למשל לא יודע תיכנות ואצלחתי לפתח תוכנה כמובן בעזרת ה AI

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

      א תגובה 1 תגובה אחרונה
      0
      • ט טופטופיסט

        @אליה-אליהו כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

        אני למשל לא יודע תיכנות ואצלחתי לפתח תוכנה כמובן בעזרת ה AI

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

        א מנותק
        א מנותק
        אליה אליהו
        כתב נערך לאחרונה על ידי
        #120

        @טופטופיסט כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

        @אליה-אליהו כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

        אני למשל לא יודע תיכנות ואצלחתי לפתח תוכנה כמובן בעזרת ה AI

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

        חייב לומר שהיה לי מאוד קשה ובהכול נעזרתי ב- gemini לא ידעתי ביכלל מה עושים כמובן שאפליקציות יותר מורכבות אני לא יוכל לפתח

        תגובה 1 תגובה אחרונה
        0
        • מישהו12מ מנותק
          מישהו12מ מנותק
          מישהו12
          מדריכים
          כתב נערך לאחרונה על ידי
          #121

          אחרי שפיתחתי תוכנה אחת עם AI -
          CobaltArchiver, נמצאת בפורום,
          אני אומר בפה מלא:
          א"א לתכנת בלי לדעת תכנות.
          הAI עשה לי כל כך הרבה בעיות ושיבושי קודים....
          בהתחלה עבד חלק, כנראה במזל.
          מאז בערך שבוע הוא רק משבש לי את הקוד,
          למרבה המזל על אף שאני לא ממש יודע פייתון, אני יודע איך תכנות עובד,
          וגם מכיר קצת פייתון,
          ולכן הצלחתי לטפל בחלק מהשגיאות או לפחות להכווין אותו איפה השגיאה.

          אם לא הייתי יודע כלל תכנות - זה לא היה מעשי באמת

          הבלוג שלי
          https://aiv-dev.com/he-IL/

          EBAE תגובה 1 תגובה אחרונה
          3
          • מ מה קורה

            @נעזר1000 שזה אומר??

            נ מנותק
            נ מנותק
            נעזר1000
            כתב נערך לאחרונה על ידי
            #122

            @מה-קורה כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

            @נעזר1000 שזה אומר??

            זה לא דרך לראות את ההיסטוריה של GPT אלא דרך לשמור גרסאות קוד
            וזה הצורה שבה עובדים בשוק

            אתה כמובן יכול לשאול את GPT על גיט ושידריך אותך.

            תגובה 1 תגובה אחרונה
            0
            • מ מה קורה

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

              צ מנותק
              צ מנותק
              צללית
              כתב נערך לאחרונה על ידי
              #123

              @מה-קורה תבקש ממנו שאת השינויים יעשה בקובץ חדש
              ובכל מקרה השינויים לא נשמרים עד שאתה לא מאשר

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

                @צבי-מחשבים כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                @sivan22 כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

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

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

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

                כאן אני אתן פירוט על שלשה כלים כאלו:

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

                השני, עליו אני ממליץ למתקדמים הוא cline - זהו תוסף לVSCODE בקוד פתוח, שנדרש כדי להפעיל אותו מפתח API בתשלום. ניתן להטעין החל מ5$. את המפתח ניתן להשיג לאחר הרשמה כאן.

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

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

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

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

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

                אין ספק שה-AI הוא בשורה, חוסך זמן יקר ומאפשר לי להספיק משימות במהירות ויעילות, מה שהייתי עושה בשבוע איתו בתוך ימים ספורים, אבל יש עדיין הרבה פינות פתוחות. המלצה שלי למפתחים צעירים – גם אם GPT נתן לך פרומפט מושלם שעובד חלק, תקח רגע לעבור עליו, תבין את הקוד, תלמד ממנו. אסור להפסיק ללמוד אף פעם, הבנה אמיתית, יצירתיות ויכולת לנתח בעיות כמו שצריך הן אלו שמבדילות בין מי שמסתמך על כלים לבין מפתח מקצועי באמת שמסמך על נסיון מר .."

                אני למשל לא יודע תיכנות ואצלחתי לפתח תוכנה כמובן בעזרת ה AI

                צ מנותק
                צ מנותק
                צללית
                כתב נערך לאחרונה על ידי
                #124

                @אליה-אליהו איזה תוכנה?

                תגובה 1 תגובה אחרונה
                0
                • מישהו12מ מישהו12

                  אחרי שפיתחתי תוכנה אחת עם AI -
                  CobaltArchiver, נמצאת בפורום,
                  אני אומר בפה מלא:
                  א"א לתכנת בלי לדעת תכנות.
                  הAI עשה לי כל כך הרבה בעיות ושיבושי קודים....
                  בהתחלה עבד חלק, כנראה במזל.
                  מאז בערך שבוע הוא רק משבש לי את הקוד,
                  למרבה המזל על אף שאני לא ממש יודע פייתון, אני יודע איך תכנות עובד,
                  וגם מכיר קצת פייתון,
                  ולכן הצלחתי לטפל בחלק מהשגיאות או לפחות להכווין אותו איפה השגיאה.

                  אם לא הייתי יודע כלל תכנות - זה לא היה מעשי באמת

                  EBAE מנותק
                  EBAE מנותק
                  EBA
                  מדריכים
                  כתב נערך לאחרונה על ידי EBA
                  #125

                  @מישהו12 כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                  א"א לתכנת בלי לדעת תכנות.

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

                  יצא מדהים, הקוד בספויילר.

                  from selenium import webdriver
                  from selenium.webdriver.chrome.service import Service
                  from selenium.webdriver.chrome.options import Options
                  from selenium.webdriver.common.by import By
                  from selenium.webdriver.support.ui import WebDriverWait
                  from selenium.webdriver.support import expected_conditions as EC
                  import time
                  import os
                  import json
                  from datetime import datetime
                  from dotenv import load_dotenv
                  from bidi.algorithm import get_display
                  
                  def display_rtl(text):
                      """מציג טקסט בעברית בכיוון הנכון"""
                      return get_display(text)
                  
                  load_dotenv()
                  
                  class ListingUpdater:
                      def __init__(self):
                          print(display_rtl("מאתחל את דפדפן Chrome..."))
                          self.cookies_file = "yad2_cookies.json"
                          self.setup_driver()
                          
                      def setup_driver(self):
                          chrome_options = Options()
                          chrome_options.add_argument('--disable-gpu')
                          chrome_options.add_argument('--no-sandbox')
                          chrome_options.add_argument('--disable-dev-shm-usage')
                          chrome_options.add_argument('--start-maximized')
                          chrome_options.add_experimental_option("detach", True)
                          
                          try:
                              self.driver = webdriver.Chrome(options=chrome_options)
                              print(display_rtl("דפדפן Chrome הואצל בהצלחה"))
                          except Exception as e:
                              print(display_rtl(f"שגיאה בהגדרת דפדפן Chrome: {str(e)}"))
                              raise
                  
                      def save_cookies(self):
                          cookies = self.driver.get_cookies()
                          with open(self.cookies_file, 'w') as f:
                              json.dump(cookies, f)
                          print(display_rtl("נשמרו עוגיות בהצלחה"))
                  
                      def load_cookies(self):
                          try:
                              with open(self.cookies_file, 'r') as f:
                                  cookies = json.load(f)
                              
                              # Navigate to the domain first
                              self.driver.get('https://www.yad2.co.il')
                              time.sleep(2)
                              
                              # Add the cookies
                              for cookie in cookies:
                                  self.driver.add_cookie(cookie)
                              
                              print(display_rtl("עוגיות נטענו בהצלחה"))
                              return True
                          except FileNotFoundError:
                              print(display_rtl("לא נמצא קובץ עוגיות קיים"))
                              return False
                          except Exception as e:
                              print(display_rtl(f"שגיאה בטעינת עוגיות: {str(e)}"))
                              return False
                  
                      def check_login_status(self):
                          try:
                              print(display_rtl("בודק סטטוס התחברות..."))
                              # First go to main page
                              self.driver.get('https://www.yad2.co.il')
                              time.sleep(3)
                              
                              # Then try to access my-ads
                              print(display_rtl("מנסה לגשת לאזור האישי..."))
                              self.driver.get('https://www.yad2.co.il/my-ads')
                              time.sleep(10)  # תן יותר זמן לטעינה
                              
                              # Check if we're actually on the my-ads page
                              current_url = self.driver.current_url
                              print(display_rtl(f"כתובת נוכחית: {current_url}"))
                              
                              if "my-ads" in current_url:
                                  print(display_rtl("מחובר בהצלחה לאזור האישי!"))
                                  return True
                              else:
                                  print(display_rtl("לא הצלחנו להגיע לאזור האישי"))
                                  return False
                                  
                          except Exception as e:
                              print(display_rtl(f"שגיאה בבדיקת סטטוס התחברות: {str(e)}"))
                              return False
                  
                      def manual_login(self):
                          print(display_rtl("\nאנא התחבר באופן ידני ל-Yad2:"))
                          print(display_rtl("1. הכנס את פרטי ההתחברות שלך"))
                          print(display_rtl("2. פתור את אתגר האבטחה אם נדרש"))
                          print(display_rtl("3. לאחר התחברות מוצלחת, התסריט ימשיך באופן אוטומטי"))
                          
                          self.driver.get('https://www.yad2.co.il/auth/login')
                          
                          # Wait for successful login
                          WebDriverWait(self.driver, 300).until(
                              lambda driver: "my-ads" in driver.current_url or "feed/my" in driver.current_url
                          )
                          
                          print(display_rtl("התחברת בהצלחה!"))
                          self.save_cookies()
                  
                      def update_listings(self):
                          try:
                              print(display_rtl("מנווט לדף המודעות שלי..."))
                              self.navigate_to_my_ads()
                              
                              # מחפש את כפתורי ההקפצה
                              print(display_rtl("\nמחפש כפתורי הקפצה..."))
                              bump_buttons = self.driver.find_elements(By.CSS_SELECTOR, "[class*='bump-button_bumpButton']")
                              
                              if not bump_buttons:
                                  print(display_rtl("לא נמצאו כפתורי הקפצה"))
                                  return False
                              
                              print(display_rtl(f"נמצאו {len(bump_buttons)} כפתורי הקפצה"))
                              
                              # עובר על כל כפתור הקפצה
                              for i in range(len(bump_buttons)):
                                  try:
                                      # מנווט מחדש לדף המודעות בכל פעם
                                      self.navigate_to_my_ads()
                                      
                                      print(display_rtl(f"\nמנסה להקפיץ מודעה {i + 1}..."))
                                      
                                      # מוצא את כפתורי ההקפצה מחדש אחרי הניווט
                                      bump_buttons = self.driver.find_elements(By.CSS_SELECTOR, "[class*='bump-button_bumpButton']")
                                      if i >= len(bump_buttons):
                                          print(display_rtl("לא נמצאו יותר כפתורי הקפצה"))
                                          break
                                          
                                      button = bump_buttons[i]
                                      print(f"\nטקסט על כפתור {i + 1}:", button.text.strip())
                                      
                                      # בודק אם הכפתור מושבת
                                      if button.get_attribute("aria-disabled") == "true" or button.get_attribute("disabled"):
                                          print(display_rtl("הכפתור מושבת"))
                                          continue
                                      
                                      # גולל לכפתור
                                      self.driver.execute_script("arguments[0].scrollIntoView(true);", button)
                                      time.sleep(1)
                                      
                                      # מנסה ללחוץ באמצעות JavaScript
                                      print("מנסה ללחוץ על כפתור ההקפצה...")
                                      self.driver.execute_script("arguments[0].click();", button)
                                      print("לחיצה על כפתור ההקפצה")
                                      
                                      # מחכה קצת ואז מרענן את הדף
                                      time.sleep(2)
                                      print("מרענן את הדף...")
                                      self.driver.refresh()
                                      
                                      # מחכה לטעינת הדף
                                      print("ממתין לטעינת הדף...")
                                      self.wait_for_page_load()
                                      print("הדף נטען")
                                      
                                      # מחכה קצת זמן אחרי ההקפצה
                                      time.sleep(3)
                                      
                                  except Exception as e:
                                      print(display_rtl(f"שגיאה בהקפצת מודעה {i + 1}: {str(e)}"))
                                      if hasattr(e, 'msg'):
                                          print(f"Message: {e.msg}")
                              
                              return True
                              
                          except Exception as e:
                              print(display_rtl(f"נכשל בהקפצת המודעות: {str(e)}"))
                              if hasattr(e, 'msg'):
                                  print(f"Message: {e.msg}")
                              return False
                              
                      def navigate_to_my_ads(self):
                          """מנווט לדף המודעות שלי ומחכה שהדף יטען"""
                          self.driver.get('https://www.yad2.co.il/my-ads')
                          
                          # מחכה שהדף יטען
                          print(display_rtl("ממתין לטעינת הדף..."))
                          WebDriverWait(self.driver, 30).until(
                              lambda driver: driver.execute_script("return document.readyState") == "complete"
                          )
                          
                          # מחכה שה-splash screen ייעלם
                          print(display_rtl("ממתין שמסך הטעינה ייעלם..."))
                          try:
                              splash_screen = WebDriverWait(self.driver, 10).until(
                                  EC.presence_of_element_located((By.CLASS_NAME, "splash-screen_box__diyY1"))
                              )
                              WebDriverWait(self.driver, 20).until(
                                  EC.staleness_of(splash_screen)
                              )
                              print(display_rtl("מסך הטעינה נעלם"))
                          except:
                              print(display_rtl("לא נמצא מסך טעינה"))
                          
                          # מחכה שיופיע התוכן האמיתי
                          print(display_rtl("ממתין לטעינת התוכן..."))
                          time.sleep(3)
                  
                      def wait_for_page_load(self):
                          WebDriverWait(self.driver, 30).until(
                              lambda driver: driver.execute_script("return document.readyState") == "complete"
                          )
                  
                      def close(self):
                          try:
                              self.driver.quit()
                          except:
                              pass
                  
                  def main():
                      updater = None
                      try:
                          while True:  # לולאה אינסופית
                              print("\nמתחיל הרצה חדשה...")
                              updater = ListingUpdater()
                              updater.load_cookies()
                              if updater.check_login_status():
                                  print(display_rtl("התחברות באמצעות עוגיות הצליחה!"))
                              else:
                                  print(display_rtl("צריך להתחבר שוב..."))
                                  updater.manual_login()
                              
                              print(display_rtl("\nמתחיל את תהליך העדכון..."))
                              updater.update_listings()
                              
                              updater.close()
                              
                              # מחכה 4 שעות ודקה
                              print("\nממתין 4 שעות ודקה עד להרצה הבאה...")
                              time.sleep((4 * 60 * 60) + 60)  # 4 שעות + דקה בשניות
                              
                      except KeyboardInterrupt:
                          print("\nהתוכנית הופסקה על ידי המשתמש")
                      finally:
                          if updater:
                              updater.close()
                  
                  if __name__ == "__main__":
                      main()
                  
                  

                  ט A 3 תגובות תגובה אחרונה
                  9
                  • EBAE EBA

                    @מישהו12 כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                    א"א לתכנת בלי לדעת תכנות.

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

                    יצא מדהים, הקוד בספויילר.

                    from selenium import webdriver
                    from selenium.webdriver.chrome.service import Service
                    from selenium.webdriver.chrome.options import Options
                    from selenium.webdriver.common.by import By
                    from selenium.webdriver.support.ui import WebDriverWait
                    from selenium.webdriver.support import expected_conditions as EC
                    import time
                    import os
                    import json
                    from datetime import datetime
                    from dotenv import load_dotenv
                    from bidi.algorithm import get_display
                    
                    def display_rtl(text):
                        """מציג טקסט בעברית בכיוון הנכון"""
                        return get_display(text)
                    
                    load_dotenv()
                    
                    class ListingUpdater:
                        def __init__(self):
                            print(display_rtl("מאתחל את דפדפן Chrome..."))
                            self.cookies_file = "yad2_cookies.json"
                            self.setup_driver()
                            
                        def setup_driver(self):
                            chrome_options = Options()
                            chrome_options.add_argument('--disable-gpu')
                            chrome_options.add_argument('--no-sandbox')
                            chrome_options.add_argument('--disable-dev-shm-usage')
                            chrome_options.add_argument('--start-maximized')
                            chrome_options.add_experimental_option("detach", True)
                            
                            try:
                                self.driver = webdriver.Chrome(options=chrome_options)
                                print(display_rtl("דפדפן Chrome הואצל בהצלחה"))
                            except Exception as e:
                                print(display_rtl(f"שגיאה בהגדרת דפדפן Chrome: {str(e)}"))
                                raise
                    
                        def save_cookies(self):
                            cookies = self.driver.get_cookies()
                            with open(self.cookies_file, 'w') as f:
                                json.dump(cookies, f)
                            print(display_rtl("נשמרו עוגיות בהצלחה"))
                    
                        def load_cookies(self):
                            try:
                                with open(self.cookies_file, 'r') as f:
                                    cookies = json.load(f)
                                
                                # Navigate to the domain first
                                self.driver.get('https://www.yad2.co.il')
                                time.sleep(2)
                                
                                # Add the cookies
                                for cookie in cookies:
                                    self.driver.add_cookie(cookie)
                                
                                print(display_rtl("עוגיות נטענו בהצלחה"))
                                return True
                            except FileNotFoundError:
                                print(display_rtl("לא נמצא קובץ עוגיות קיים"))
                                return False
                            except Exception as e:
                                print(display_rtl(f"שגיאה בטעינת עוגיות: {str(e)}"))
                                return False
                    
                        def check_login_status(self):
                            try:
                                print(display_rtl("בודק סטטוס התחברות..."))
                                # First go to main page
                                self.driver.get('https://www.yad2.co.il')
                                time.sleep(3)
                                
                                # Then try to access my-ads
                                print(display_rtl("מנסה לגשת לאזור האישי..."))
                                self.driver.get('https://www.yad2.co.il/my-ads')
                                time.sleep(10)  # תן יותר זמן לטעינה
                                
                                # Check if we're actually on the my-ads page
                                current_url = self.driver.current_url
                                print(display_rtl(f"כתובת נוכחית: {current_url}"))
                                
                                if "my-ads" in current_url:
                                    print(display_rtl("מחובר בהצלחה לאזור האישי!"))
                                    return True
                                else:
                                    print(display_rtl("לא הצלחנו להגיע לאזור האישי"))
                                    return False
                                    
                            except Exception as e:
                                print(display_rtl(f"שגיאה בבדיקת סטטוס התחברות: {str(e)}"))
                                return False
                    
                        def manual_login(self):
                            print(display_rtl("\nאנא התחבר באופן ידני ל-Yad2:"))
                            print(display_rtl("1. הכנס את פרטי ההתחברות שלך"))
                            print(display_rtl("2. פתור את אתגר האבטחה אם נדרש"))
                            print(display_rtl("3. לאחר התחברות מוצלחת, התסריט ימשיך באופן אוטומטי"))
                            
                            self.driver.get('https://www.yad2.co.il/auth/login')
                            
                            # Wait for successful login
                            WebDriverWait(self.driver, 300).until(
                                lambda driver: "my-ads" in driver.current_url or "feed/my" in driver.current_url
                            )
                            
                            print(display_rtl("התחברת בהצלחה!"))
                            self.save_cookies()
                    
                        def update_listings(self):
                            try:
                                print(display_rtl("מנווט לדף המודעות שלי..."))
                                self.navigate_to_my_ads()
                                
                                # מחפש את כפתורי ההקפצה
                                print(display_rtl("\nמחפש כפתורי הקפצה..."))
                                bump_buttons = self.driver.find_elements(By.CSS_SELECTOR, "[class*='bump-button_bumpButton']")
                                
                                if not bump_buttons:
                                    print(display_rtl("לא נמצאו כפתורי הקפצה"))
                                    return False
                                
                                print(display_rtl(f"נמצאו {len(bump_buttons)} כפתורי הקפצה"))
                                
                                # עובר על כל כפתור הקפצה
                                for i in range(len(bump_buttons)):
                                    try:
                                        # מנווט מחדש לדף המודעות בכל פעם
                                        self.navigate_to_my_ads()
                                        
                                        print(display_rtl(f"\nמנסה להקפיץ מודעה {i + 1}..."))
                                        
                                        # מוצא את כפתורי ההקפצה מחדש אחרי הניווט
                                        bump_buttons = self.driver.find_elements(By.CSS_SELECTOR, "[class*='bump-button_bumpButton']")
                                        if i >= len(bump_buttons):
                                            print(display_rtl("לא נמצאו יותר כפתורי הקפצה"))
                                            break
                                            
                                        button = bump_buttons[i]
                                        print(f"\nטקסט על כפתור {i + 1}:", button.text.strip())
                                        
                                        # בודק אם הכפתור מושבת
                                        if button.get_attribute("aria-disabled") == "true" or button.get_attribute("disabled"):
                                            print(display_rtl("הכפתור מושבת"))
                                            continue
                                        
                                        # גולל לכפתור
                                        self.driver.execute_script("arguments[0].scrollIntoView(true);", button)
                                        time.sleep(1)
                                        
                                        # מנסה ללחוץ באמצעות JavaScript
                                        print("מנסה ללחוץ על כפתור ההקפצה...")
                                        self.driver.execute_script("arguments[0].click();", button)
                                        print("לחיצה על כפתור ההקפצה")
                                        
                                        # מחכה קצת ואז מרענן את הדף
                                        time.sleep(2)
                                        print("מרענן את הדף...")
                                        self.driver.refresh()
                                        
                                        # מחכה לטעינת הדף
                                        print("ממתין לטעינת הדף...")
                                        self.wait_for_page_load()
                                        print("הדף נטען")
                                        
                                        # מחכה קצת זמן אחרי ההקפצה
                                        time.sleep(3)
                                        
                                    except Exception as e:
                                        print(display_rtl(f"שגיאה בהקפצת מודעה {i + 1}: {str(e)}"))
                                        if hasattr(e, 'msg'):
                                            print(f"Message: {e.msg}")
                                
                                return True
                                
                            except Exception as e:
                                print(display_rtl(f"נכשל בהקפצת המודעות: {str(e)}"))
                                if hasattr(e, 'msg'):
                                    print(f"Message: {e.msg}")
                                return False
                                
                        def navigate_to_my_ads(self):
                            """מנווט לדף המודעות שלי ומחכה שהדף יטען"""
                            self.driver.get('https://www.yad2.co.il/my-ads')
                            
                            # מחכה שהדף יטען
                            print(display_rtl("ממתין לטעינת הדף..."))
                            WebDriverWait(self.driver, 30).until(
                                lambda driver: driver.execute_script("return document.readyState") == "complete"
                            )
                            
                            # מחכה שה-splash screen ייעלם
                            print(display_rtl("ממתין שמסך הטעינה ייעלם..."))
                            try:
                                splash_screen = WebDriverWait(self.driver, 10).until(
                                    EC.presence_of_element_located((By.CLASS_NAME, "splash-screen_box__diyY1"))
                                )
                                WebDriverWait(self.driver, 20).until(
                                    EC.staleness_of(splash_screen)
                                )
                                print(display_rtl("מסך הטעינה נעלם"))
                            except:
                                print(display_rtl("לא נמצא מסך טעינה"))
                            
                            # מחכה שיופיע התוכן האמיתי
                            print(display_rtl("ממתין לטעינת התוכן..."))
                            time.sleep(3)
                    
                        def wait_for_page_load(self):
                            WebDriverWait(self.driver, 30).until(
                                lambda driver: driver.execute_script("return document.readyState") == "complete"
                            )
                    
                        def close(self):
                            try:
                                self.driver.quit()
                            except:
                                pass
                    
                    def main():
                        updater = None
                        try:
                            while True:  # לולאה אינסופית
                                print("\nמתחיל הרצה חדשה...")
                                updater = ListingUpdater()
                                updater.load_cookies()
                                if updater.check_login_status():
                                    print(display_rtl("התחברות באמצעות עוגיות הצליחה!"))
                                else:
                                    print(display_rtl("צריך להתחבר שוב..."))
                                    updater.manual_login()
                                
                                print(display_rtl("\nמתחיל את תהליך העדכון..."))
                                updater.update_listings()
                                
                                updater.close()
                                
                                # מחכה 4 שעות ודקה
                                print("\nממתין 4 שעות ודקה עד להרצה הבאה...")
                                time.sleep((4 * 60 * 60) + 60)  # 4 שעות + דקה בשניות
                                
                        except KeyboardInterrupt:
                            print("\nהתוכנית הופסקה על ידי המשתמש")
                        finally:
                            if updater:
                                updater.close()
                    
                    if __name__ == "__main__":
                        main()
                    
                    

                    ט מנותק
                    ט מנותק
                    טופטופיסט
                    כתב נערך לאחרונה על ידי טופטופיסט
                    #126

                    @EBA כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

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

                    רעין פצצה!


                    חבל שלא שיתפת אותנו בפורום כבר 'לפני שנים'...

                    EBAE תגובה 1 תגובה אחרונה
                    0
                    • ט טופטופיסט

                      @EBA כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

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

                      רעין פצצה!


                      חבל שלא שיתפת אותנו בפורום כבר 'לפני שנים'...

                      EBAE מנותק
                      EBAE מנותק
                      EBA
                      מדריכים
                      כתב נערך לאחרונה על ידי
                      #127

                      @טופטופיסט שיתפתי
                      https://mitmachim.top/topic/11664/עזרה-ממומחי-סקריפטים-הקפצה-אוטומטית-יד-2

                      תגובה 1 תגובה אחרונה
                      1
                      • EBAE EBA

                        @מישהו12 כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                        א"א לתכנת בלי לדעת תכנות.

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

                        יצא מדהים, הקוד בספויילר.

                        from selenium import webdriver
                        from selenium.webdriver.chrome.service import Service
                        from selenium.webdriver.chrome.options import Options
                        from selenium.webdriver.common.by import By
                        from selenium.webdriver.support.ui import WebDriverWait
                        from selenium.webdriver.support import expected_conditions as EC
                        import time
                        import os
                        import json
                        from datetime import datetime
                        from dotenv import load_dotenv
                        from bidi.algorithm import get_display
                        
                        def display_rtl(text):
                            """מציג טקסט בעברית בכיוון הנכון"""
                            return get_display(text)
                        
                        load_dotenv()
                        
                        class ListingUpdater:
                            def __init__(self):
                                print(display_rtl("מאתחל את דפדפן Chrome..."))
                                self.cookies_file = "yad2_cookies.json"
                                self.setup_driver()
                                
                            def setup_driver(self):
                                chrome_options = Options()
                                chrome_options.add_argument('--disable-gpu')
                                chrome_options.add_argument('--no-sandbox')
                                chrome_options.add_argument('--disable-dev-shm-usage')
                                chrome_options.add_argument('--start-maximized')
                                chrome_options.add_experimental_option("detach", True)
                                
                                try:
                                    self.driver = webdriver.Chrome(options=chrome_options)
                                    print(display_rtl("דפדפן Chrome הואצל בהצלחה"))
                                except Exception as e:
                                    print(display_rtl(f"שגיאה בהגדרת דפדפן Chrome: {str(e)}"))
                                    raise
                        
                            def save_cookies(self):
                                cookies = self.driver.get_cookies()
                                with open(self.cookies_file, 'w') as f:
                                    json.dump(cookies, f)
                                print(display_rtl("נשמרו עוגיות בהצלחה"))
                        
                            def load_cookies(self):
                                try:
                                    with open(self.cookies_file, 'r') as f:
                                        cookies = json.load(f)
                                    
                                    # Navigate to the domain first
                                    self.driver.get('https://www.yad2.co.il')
                                    time.sleep(2)
                                    
                                    # Add the cookies
                                    for cookie in cookies:
                                        self.driver.add_cookie(cookie)
                                    
                                    print(display_rtl("עוגיות נטענו בהצלחה"))
                                    return True
                                except FileNotFoundError:
                                    print(display_rtl("לא נמצא קובץ עוגיות קיים"))
                                    return False
                                except Exception as e:
                                    print(display_rtl(f"שגיאה בטעינת עוגיות: {str(e)}"))
                                    return False
                        
                            def check_login_status(self):
                                try:
                                    print(display_rtl("בודק סטטוס התחברות..."))
                                    # First go to main page
                                    self.driver.get('https://www.yad2.co.il')
                                    time.sleep(3)
                                    
                                    # Then try to access my-ads
                                    print(display_rtl("מנסה לגשת לאזור האישי..."))
                                    self.driver.get('https://www.yad2.co.il/my-ads')
                                    time.sleep(10)  # תן יותר זמן לטעינה
                                    
                                    # Check if we're actually on the my-ads page
                                    current_url = self.driver.current_url
                                    print(display_rtl(f"כתובת נוכחית: {current_url}"))
                                    
                                    if "my-ads" in current_url:
                                        print(display_rtl("מחובר בהצלחה לאזור האישי!"))
                                        return True
                                    else:
                                        print(display_rtl("לא הצלחנו להגיע לאזור האישי"))
                                        return False
                                        
                                except Exception as e:
                                    print(display_rtl(f"שגיאה בבדיקת סטטוס התחברות: {str(e)}"))
                                    return False
                        
                            def manual_login(self):
                                print(display_rtl("\nאנא התחבר באופן ידני ל-Yad2:"))
                                print(display_rtl("1. הכנס את פרטי ההתחברות שלך"))
                                print(display_rtl("2. פתור את אתגר האבטחה אם נדרש"))
                                print(display_rtl("3. לאחר התחברות מוצלחת, התסריט ימשיך באופן אוטומטי"))
                                
                                self.driver.get('https://www.yad2.co.il/auth/login')
                                
                                # Wait for successful login
                                WebDriverWait(self.driver, 300).until(
                                    lambda driver: "my-ads" in driver.current_url or "feed/my" in driver.current_url
                                )
                                
                                print(display_rtl("התחברת בהצלחה!"))
                                self.save_cookies()
                        
                            def update_listings(self):
                                try:
                                    print(display_rtl("מנווט לדף המודעות שלי..."))
                                    self.navigate_to_my_ads()
                                    
                                    # מחפש את כפתורי ההקפצה
                                    print(display_rtl("\nמחפש כפתורי הקפצה..."))
                                    bump_buttons = self.driver.find_elements(By.CSS_SELECTOR, "[class*='bump-button_bumpButton']")
                                    
                                    if not bump_buttons:
                                        print(display_rtl("לא נמצאו כפתורי הקפצה"))
                                        return False
                                    
                                    print(display_rtl(f"נמצאו {len(bump_buttons)} כפתורי הקפצה"))
                                    
                                    # עובר על כל כפתור הקפצה
                                    for i in range(len(bump_buttons)):
                                        try:
                                            # מנווט מחדש לדף המודעות בכל פעם
                                            self.navigate_to_my_ads()
                                            
                                            print(display_rtl(f"\nמנסה להקפיץ מודעה {i + 1}..."))
                                            
                                            # מוצא את כפתורי ההקפצה מחדש אחרי הניווט
                                            bump_buttons = self.driver.find_elements(By.CSS_SELECTOR, "[class*='bump-button_bumpButton']")
                                            if i >= len(bump_buttons):
                                                print(display_rtl("לא נמצאו יותר כפתורי הקפצה"))
                                                break
                                                
                                            button = bump_buttons[i]
                                            print(f"\nטקסט על כפתור {i + 1}:", button.text.strip())
                                            
                                            # בודק אם הכפתור מושבת
                                            if button.get_attribute("aria-disabled") == "true" or button.get_attribute("disabled"):
                                                print(display_rtl("הכפתור מושבת"))
                                                continue
                                            
                                            # גולל לכפתור
                                            self.driver.execute_script("arguments[0].scrollIntoView(true);", button)
                                            time.sleep(1)
                                            
                                            # מנסה ללחוץ באמצעות JavaScript
                                            print("מנסה ללחוץ על כפתור ההקפצה...")
                                            self.driver.execute_script("arguments[0].click();", button)
                                            print("לחיצה על כפתור ההקפצה")
                                            
                                            # מחכה קצת ואז מרענן את הדף
                                            time.sleep(2)
                                            print("מרענן את הדף...")
                                            self.driver.refresh()
                                            
                                            # מחכה לטעינת הדף
                                            print("ממתין לטעינת הדף...")
                                            self.wait_for_page_load()
                                            print("הדף נטען")
                                            
                                            # מחכה קצת זמן אחרי ההקפצה
                                            time.sleep(3)
                                            
                                        except Exception as e:
                                            print(display_rtl(f"שגיאה בהקפצת מודעה {i + 1}: {str(e)}"))
                                            if hasattr(e, 'msg'):
                                                print(f"Message: {e.msg}")
                                    
                                    return True
                                    
                                except Exception as e:
                                    print(display_rtl(f"נכשל בהקפצת המודעות: {str(e)}"))
                                    if hasattr(e, 'msg'):
                                        print(f"Message: {e.msg}")
                                    return False
                                    
                            def navigate_to_my_ads(self):
                                """מנווט לדף המודעות שלי ומחכה שהדף יטען"""
                                self.driver.get('https://www.yad2.co.il/my-ads')
                                
                                # מחכה שהדף יטען
                                print(display_rtl("ממתין לטעינת הדף..."))
                                WebDriverWait(self.driver, 30).until(
                                    lambda driver: driver.execute_script("return document.readyState") == "complete"
                                )
                                
                                # מחכה שה-splash screen ייעלם
                                print(display_rtl("ממתין שמסך הטעינה ייעלם..."))
                                try:
                                    splash_screen = WebDriverWait(self.driver, 10).until(
                                        EC.presence_of_element_located((By.CLASS_NAME, "splash-screen_box__diyY1"))
                                    )
                                    WebDriverWait(self.driver, 20).until(
                                        EC.staleness_of(splash_screen)
                                    )
                                    print(display_rtl("מסך הטעינה נעלם"))
                                except:
                                    print(display_rtl("לא נמצא מסך טעינה"))
                                
                                # מחכה שיופיע התוכן האמיתי
                                print(display_rtl("ממתין לטעינת התוכן..."))
                                time.sleep(3)
                        
                            def wait_for_page_load(self):
                                WebDriverWait(self.driver, 30).until(
                                    lambda driver: driver.execute_script("return document.readyState") == "complete"
                                )
                        
                            def close(self):
                                try:
                                    self.driver.quit()
                                except:
                                    pass
                        
                        def main():
                            updater = None
                            try:
                                while True:  # לולאה אינסופית
                                    print("\nמתחיל הרצה חדשה...")
                                    updater = ListingUpdater()
                                    updater.load_cookies()
                                    if updater.check_login_status():
                                        print(display_rtl("התחברות באמצעות עוגיות הצליחה!"))
                                    else:
                                        print(display_rtl("צריך להתחבר שוב..."))
                                        updater.manual_login()
                                    
                                    print(display_rtl("\nמתחיל את תהליך העדכון..."))
                                    updater.update_listings()
                                    
                                    updater.close()
                                    
                                    # מחכה 4 שעות ודקה
                                    print("\nממתין 4 שעות ודקה עד להרצה הבאה...")
                                    time.sleep((4 * 60 * 60) + 60)  # 4 שעות + דקה בשניות
                                    
                            except KeyboardInterrupt:
                                print("\nהתוכנית הופסקה על ידי המשתמש")
                            finally:
                                if updater:
                                    updater.close()
                        
                        if __name__ == "__main__":
                            main()
                        
                        

                        A מנותק
                        A מנותק
                        aiib
                        כתב נערך לאחרונה על ידי
                        #128

                        @EBA איך משתמשים בו?
                        בעבר היה כזה דבר ויד 2 חסמו אותו...

                        NH.LOCALN תגובה 1 תגובה אחרונה
                        0
                        • A aiib

                          @EBA איך משתמשים בו?
                          בעבר היה כזה דבר ויד 2 חסמו אותו...

                          NH.LOCALN מנותק
                          NH.LOCALN מנותק
                          NH.LOCAL
                          מדריכים
                          כתב נערך לאחרונה על ידי
                          #129

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

                          כל הפרטים כאן: https://github.com/features/copilot

                          לאינדקס המלא של כלל הסקריפטים שלי
                          https://nhlocal.github.io

                          M תגובה 1 תגובה אחרונה
                          5
                          • NH.LOCALN NH.LOCAL

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

                            כל הפרטים כאן: https://github.com/features/copilot

                            M מנותק
                            M מנותק
                            MAKRO
                            כתב נערך לאחרונה על ידי
                            #130

                            @NH-LOCAL @sivan22 @ @צדיק-תמים ושאר הכותבים המבינים
                            אשמח לשמוע מהו המודל החינמי המומלץ לכתיבת קוד
                            אבל לא שמתפקד כתוסף ל VS אלא בלי שום תוכנה שמותקנת על המחשב
                            (הכתיבה וההרצה תהיה במחשב אחר)
                            תודה!

                            צ תגובה 1 תגובה אחרונה
                            1
                            • M MAKRO

                              @NH-LOCAL @sivan22 @ @צדיק-תמים ושאר הכותבים המבינים
                              אשמח לשמוע מהו המודל החינמי המומלץ לכתיבת קוד
                              אבל לא שמתפקד כתוסף ל VS אלא בלי שום תוכנה שמותקנת על המחשב
                              (הכתיבה וההרצה תהיה במחשב אחר)
                              תודה!

                              צ מנותק
                              צ מנותק
                              צללית
                              כתב נערך לאחרונה על ידי
                              #131

                              @MAKRO אם השאלה היא gemini מול chat-gpt - ברור שchat-gpt עולה בכמה רמות. ובתוך chat-gpt יש כמה מודלים, יש את היותר טוב בחינם ואחרי כמה שאלות זה יורד, ועדיין זה יותר טוב מג'מיני
                              קלוד לא בדקתי

                              M NH.LOCALN 2 תגובות תגובה אחרונה
                              1
                              • צ צללית

                                @MAKRO אם השאלה היא gemini מול chat-gpt - ברור שchat-gpt עולה בכמה רמות. ובתוך chat-gpt יש כמה מודלים, יש את היותר טוב בחינם ואחרי כמה שאלות זה יורד, ועדיין זה יותר טוב מג'מיני
                                קלוד לא בדקתי

                                M מנותק
                                M מנותק
                                MAKRO
                                כתב נערך לאחרונה על ידי
                                #132

                                @צללית כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                                קלוד לא בדקתי

                                @NH-LOCAL כתב שכיום, החינמי שלהם כבר לא משהו...

                                נ NH.LOCALN 2 תגובות תגובה אחרונה
                                0
                                • M MAKRO

                                  @צללית כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                                  קלוד לא בדקתי

                                  @NH-LOCAL כתב שכיום, החינמי שלהם כבר לא משהו...

                                  נ מנותק
                                  נ מנותק
                                  נעזר1000
                                  כתב נערך לאחרונה על ידי נעזר1000
                                  #133

                                  @MAKRO כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                                  @צללית כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                                  קלוד לא בדקתי

                                  @NH-LOCAL כתב שכיום, החינמי שלהם כבר לא משהו...

                                  זכור לי שהוא ( @NH-LOCAL ) גם כתב שבשביל פרונט ועיצובים הוא (קלוד) הרבה יותר טוב מכל השאר,
                                  ואני מאשר זאת מנסיון.

                                  ומנצל את ההזדמנות להודות לו על הטיפ הזה.

                                  תגובה 1 תגובה אחרונה
                                  1
                                  • M MAKRO

                                    @צללית כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                                    קלוד לא בדקתי

                                    @NH-LOCAL כתב שכיום, החינמי שלהם כבר לא משהו...

                                    NH.LOCALN מנותק
                                    NH.LOCALN מנותק
                                    NH.LOCAL
                                    מדריכים
                                    כתב נערך לאחרונה על ידי
                                    #134

                                    @MAKRO כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                                    @צללית כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                                    קלוד לא בדקתי

                                    @NH-LOCAL כתב שכיום, החינמי שלהם כבר לא משהו...

                                    זה השתנה כעת שוב, הם החזירו את המודל הטוב שלהם למשתמשים החינמיים ממש אתמול!

                                    לאינדקס המלא של כלל הסקריפטים שלי
                                    https://nhlocal.github.io

                                    תגובה 1 תגובה אחרונה
                                    3
                                    • צ צללית

                                      @MAKRO אם השאלה היא gemini מול chat-gpt - ברור שchat-gpt עולה בכמה רמות. ובתוך chat-gpt יש כמה מודלים, יש את היותר טוב בחינם ואחרי כמה שאלות זה יורד, ועדיין זה יותר טוב מג'מיני
                                      קלוד לא בדקתי

                                      NH.LOCALN מנותק
                                      NH.LOCALN מנותק
                                      NH.LOCAL
                                      מדריכים
                                      כתב נערך לאחרונה על ידי NH.LOCAL
                                      #135

                                      @צללית כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                                      @MAKRO אם השאלה היא gemini מול chat-gpt - ברור שchat-gpt עולה בכמה רמות. ובתוך chat-gpt יש כמה מודלים, יש את היותר טוב בחינם ואחרי כמה שאלות זה יורד, ועדיין זה יותר טוב מג'מיני
                                      קלוד לא בדקתי

                                      כבר לא ממש נכון. ממליץ להסתכל על המדד livebench שמודד יכולות של מודלי AI בכמה פרמטרים מרכזיים.

                                      בפועל, מהניסיון האישי שלי, זה תלוי מאוד פר משימה. בשבוע האחרון עסקתי במספר פרוייקטים שונים ומשונים עם דרישות ומבני קוד שונים. בחלק מהמקרים gpt4o הפשוט היה טוב יותר מכל מודל אחר, במקרים אחרים זה היה gemini 2.0 החדש ובמקרים מסויימים o1 של OPENAI

                                      לאינדקס המלא של כלל הסקריפטים שלי
                                      https://nhlocal.github.io

                                      צ תגובה 1 תגובה אחרונה
                                      3
                                      • NH.LOCALN NH.LOCAL

                                        @צללית כתב בהמלצה | לתכנת בלי לדעת תיכנות - היום זה אפשרי:

                                        @MAKRO אם השאלה היא gemini מול chat-gpt - ברור שchat-gpt עולה בכמה רמות. ובתוך chat-gpt יש כמה מודלים, יש את היותר טוב בחינם ואחרי כמה שאלות זה יורד, ועדיין זה יותר טוב מג'מיני
                                        קלוד לא בדקתי

                                        כבר לא ממש נכון. ממליץ להסתכל על המדד livebench שמודד יכולות של מודלי AI בכמה פרמטרים מרכזיים.

                                        בפועל, מהניסיון האישי שלי, זה תלוי מאוד פר משימה. בשבוע האחרון עסקתי במספר פרוייקטים שונים ומשונים עם דרישות ומבני קוד שונים. בחלק מהמקרים gpt4o הפשוט היה טוב יותר מכל מודל אחר, במקרים אחרים זה היה gemini 2.0 החדש ובמקרים מסויימים o1 של OPENAI

                                        צ מנותק
                                        צ מנותק
                                        צללית
                                        כתב נערך לאחרונה על ידי
                                        #136

                                        @NH-LOCAL אני כתבתי מהניסיון שלי, יתכן שבאמת זה תלוי במשימות. בכל הפעמים שבדקתי אותו דבר בשניהם, chat-gpt היה יותר ממוקד ומדויק ועם פחות הזיות. וגם כשהיה צריך לתקן את עצמו הוא הבין יותר מהר את נקודת הבעיה.

                                        תגובה 1 תגובה אחרונה
                                        0
                                        • sivan22S sivan22

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

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

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

                                          כאן אני אתן פירוט על שלשה כלים כאלו:

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

                                          השני, עליו אני ממליץ למתקדמים הוא cline - זהו תוסף לVSCODE בקוד פתוח, שכדי להפעיל אותו נדרש API. אפשר להשתמש גם עם API חינמי של גוגל שניתן להשיג מכאן. אם כי איכות יותר טובה תתקבל בשימוש בAPI בתשלום של אנטרופיק, ניתן להטעין החל מ5$. את המפתח ניתן להשיג לאחר הרשמה כאן.

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

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

                                          צ מנותק
                                          צ מנותק
                                          צללית
                                          כתב נערך לאחרונה על ידי
                                          #137

                                          @sivan22 ניסיתי היום להשתמש בwindsurf ומשום מה כל פעם שהוא מנסה ליצור קובץ הוא נתקל בשגיאה הבאה:

                                          ErrorCascade cannot propose edits to files that do not exist.
                                          איך אני יכול לפתור את זה?

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

                                          • התחברות

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

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