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

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. איך בונים בוט מושלם?

איך בונים בוט מושלם?

מתוזמן נעוץ נעול הועבר תכנות
44 פוסטים 7 כותבים 1.0k צפיות 6 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • nigunN nigun

    @dovid
    לא דווקא תזוזות עכבר
    אלא בדיקה איזה אירועים הוא מפעיל ובאיזה סדר
    וכן כמה זמן הוא שוהה בכל דף
    האם יש עוד פעולות שאני עושה ובוט לא?
    בכל מקרה אני מניח שבעלי האתרים לא חוסמים כל מי שיש לו דירוג 0.7 ומטה
    כי זה יהרוס להם את החוות משתמש
    השאלה היא איפה הגבול?

    dovidD מחובר
    dovidD מחובר
    dovid
    ניהול
    כתב ב נערך לאחרונה על ידי dovid
    #14

    @nigun אתה במחילה עושה צחוק מכל העולם.
    הreCaptcha נולד בגלל שהcaptcha המסורתי, שהיה קשה מאוד לרובוטים, נפרץ ע"י בינה מלאכותית ב98 אחוזים...
    ולכן פיתחו את הreCaptcha שבא לעשות מענה הפוך - הוא רתם את הבינה המלאכותית כדי לזהות התנהגות אנושית (זה יכול להיות סוציולגית/ספונטנית וכל נתון שלא יהיה, והם שומרים בסוד את הפרמטרי הקלט עליהם הם נשענים) יחד עם המידע הכללי שיש לגוגל על כל משתמש בעולם. שניהם ביחד הם שילוב חזק מאוד.
    כששאלת איך זה עובד הזדהיתי עם השאלה כי גם אותי זה גירה לדעת, אבל אם אתה שואל טכנית למה אי אפשר לעקוף את זה ע"י סימולציה של "אירועי הדף" שאתה כל הזמן מדבר עליהם, אז תבין שאת זה היה גם בזמן הcaptcha המסורתי...

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

    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
    nigunN תגובה 1 תגובה אחרונה
    2
    • dovidD dovid

      @nigun אתה במחילה עושה צחוק מכל העולם.
      הreCaptcha נולד בגלל שהcaptcha המסורתי, שהיה קשה מאוד לרובוטים, נפרץ ע"י בינה מלאכותית ב98 אחוזים...
      ולכן פיתחו את הreCaptcha שבא לעשות מענה הפוך - הוא רתם את הבינה המלאכותית כדי לזהות התנהגות אנושית (זה יכול להיות סוציולגית/ספונטנית וכל נתון שלא יהיה, והם שומרים בסוד את הפרמטרי הקלט עליהם הם נשענים) יחד עם המידע הכללי שיש לגוגל על כל משתמש בעולם. שניהם ביחד הם שילוב חזק מאוד.
      כששאלת איך זה עובד הזדהיתי עם השאלה כי גם אותי זה גירה לדעת, אבל אם אתה שואל טכנית למה אי אפשר לעקוף את זה ע"י סימולציה של "אירועי הדף" שאתה כל הזמן מדבר עליהם, אז תבין שאת זה היה גם בזמן הcaptcha המסורתי...

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

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

      @dovid
      לפי מה שהבנתי זה החלטה של בעל האתר באיזה רמה הוא חוסם את המשתמש
      יש אתרים רגישים של אחרי כמה לחיצות ברצף ישר קופץ לך האימות ע"י בחירת תמונה
      יש כאלו שמסתפקים בסימון V
      ויש אתרים שרק אחרי הרבה כניסות מאותו IP הם מקפיצים את החסימה
      אני מעשר שיש אתרים שמגדירים חסימה הרמטית לIP שיש לו דירוג נמוך באופן קבוע
      אני לא חשבתי שאני יגיע עם רובוט לדירוג של 0.9
      אבל עם קצת משחקים אולי אפשר לעלות מ0 ל0.2 או מה שזה לא יהיה
      שיהיה בקטגוריה של האפשרות שזה בן אדם שיש לו סך הכל מילוי טפסים אוטומטי
      ואז לפחות הIP שלי לא יחסם וכן באתרים שלא חופרים עם האימות כל רגע אני יוכל להיכנס
      (כמובן שאם אני יגזים, בעל האתר אולי ישים לב שיש פה תנועה מוגזמת ויחליט להעלות את הרמה רגישות)

      חוץ מזה יש עוד נושא האם אפשר לעקוף את המנגנון של reCaptcha 1 ע"י יצירת אירוע של קליק בדיוק כמו המשתמש
      וכן האם אפשר לעקוף את reCaptcha2 ע"י שלחה התמונות לבדיקה אנושית (ששווה במקרים מסוימים)
      שאגב עצם קיומו של חברה כזאת מצביע שיש כאלו יש משתמשים ברובוט באופן קבוע ולא נחסמים
      אמנם יכול להיות שהלקוחות של החברה הזאת פיתחו לעצמם אלגוריתם שמדמה תנועות של לקוח וככה מעלים את הדירוג שלהם שלא יזהו שהם רובוט ולי אין את המשאבים לפיתוח כזה

      מייל: nigun@duck.com

      dovidD תגובה 1 תגובה אחרונה
      0
      • nigunN nigun

        @dovid
        לפי מה שהבנתי זה החלטה של בעל האתר באיזה רמה הוא חוסם את המשתמש
        יש אתרים רגישים של אחרי כמה לחיצות ברצף ישר קופץ לך האימות ע"י בחירת תמונה
        יש כאלו שמסתפקים בסימון V
        ויש אתרים שרק אחרי הרבה כניסות מאותו IP הם מקפיצים את החסימה
        אני מעשר שיש אתרים שמגדירים חסימה הרמטית לIP שיש לו דירוג נמוך באופן קבוע
        אני לא חשבתי שאני יגיע עם רובוט לדירוג של 0.9
        אבל עם קצת משחקים אולי אפשר לעלות מ0 ל0.2 או מה שזה לא יהיה
        שיהיה בקטגוריה של האפשרות שזה בן אדם שיש לו סך הכל מילוי טפסים אוטומטי
        ואז לפחות הIP שלי לא יחסם וכן באתרים שלא חופרים עם האימות כל רגע אני יוכל להיכנס
        (כמובן שאם אני יגזים, בעל האתר אולי ישים לב שיש פה תנועה מוגזמת ויחליט להעלות את הרמה רגישות)

        חוץ מזה יש עוד נושא האם אפשר לעקוף את המנגנון של reCaptcha 1 ע"י יצירת אירוע של קליק בדיוק כמו המשתמש
        וכן האם אפשר לעקוף את reCaptcha2 ע"י שלחה התמונות לבדיקה אנושית (ששווה במקרים מסוימים)
        שאגב עצם קיומו של חברה כזאת מצביע שיש כאלו יש משתמשים ברובוט באופן קבוע ולא נחסמים
        אמנם יכול להיות שהלקוחות של החברה הזאת פיתחו לעצמם אלגוריתם שמדמה תנועות של לקוח וככה מעלים את הדירוג שלהם שלא יזהו שהם רובוט ולי אין את המשאבים לפיתוח כזה

        dovidD מחובר
        dovidD מחובר
        dovid
        ניהול
        כתב ב נערך לאחרונה על ידי dovid
        #16

        @nigun לא אכפת לי כמה תגדיר לעצמך שזה קל, בכל מקרה תדע שאתה חי בסרט.
        ההגדרה של תמונות או וי לא תלויה בהגדרת האתר אלא בגוגל, והיא עושה את זה בהתאם לחשדות שלה (גם מה שכתבת שגוגל הוסיפו זאת בהמשך לא נכון, מייד היה את זה רק שזה מופיע רק לחשודים. כמו"כ בגלל שגוגל עצמה מתבססת על בינה מלאכותית השתפרות הרובוטים רק משפרים את המנגנון ולא מצריכים לשכלל אותו).
        ואתרים שמקבלים תרומות אולי מקבלים 0.2 השאר לא אכפת להם לשים 0.5 ומעלה, זה לא פוגע בכלל בחוויות משתמשים נורמליים.
        (אתה גם כותב שאם תגזים בעל האתר יעלה את הרגישות כשאתה לא מבין שגוגל תשים לב מאה שנה לפניו ויורידו לך את הדירוג).

        אין הבדל מהותי בין reCaptcha 1,2,3 וכל מה שאמרתי תקף לכולם.
        וכל מפתח בוט (גם משנת ה2000 שהיה captcha פשוט של תוים בתמונה בלתי קשים) יודע לעשות אירוע קליק, כך שיש לך בעיה בסיסית של לחשוד את כולם בפיגור.

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

        • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
        • בכל נושא אפשר ליצור קשר dovid@tchumim.com
        nigunN תגובה 1 תגובה אחרונה
        2
        • dovidD dovid

          @nigun לא אכפת לי כמה תגדיר לעצמך שזה קל, בכל מקרה תדע שאתה חי בסרט.
          ההגדרה של תמונות או וי לא תלויה בהגדרת האתר אלא בגוגל, והיא עושה את זה בהתאם לחשדות שלה (גם מה שכתבת שגוגל הוסיפו זאת בהמשך לא נכון, מייד היה את זה רק שזה מופיע רק לחשודים. כמו"כ בגלל שגוגל עצמה מתבססת על בינה מלאכותית השתפרות הרובוטים רק משפרים את המנגנון ולא מצריכים לשכלל אותו).
          ואתרים שמקבלים תרומות אולי מקבלים 0.2 השאר לא אכפת להם לשים 0.5 ומעלה, זה לא פוגע בכלל בחוויות משתמשים נורמליים.
          (אתה גם כותב שאם תגזים בעל האתר יעלה את הרגישות כשאתה לא מבין שגוגל תשים לב מאה שנה לפניו ויורידו לך את הדירוג).

          אין הבדל מהותי בין reCaptcha 1,2,3 וכל מה שאמרתי תקף לכולם.
          וכל מפתח בוט (גם משנת ה2000 שהיה captcha פשוט של תוים בתמונה בלתי קשים) יודע לעשות אירוע קליק, כך שיש לך בעיה בסיסית של לחשוד את כולם בפיגור.

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

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

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

          מייל: nigun@duck.com

          dovidD תגובה 1 תגובה אחרונה
          0
          • nigunN nigun

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

            dovidD מחובר
            dovidD מחובר
            dovid
            ניהול
            כתב ב נערך לאחרונה על ידי
            #18

            @nigun במקום לדמיין תעשה ואל תשכח לבוא לפה עם התוצאות.
            תוכל להיעזר ברפוזיטורי של מדומיינים: https://github.com/berstend/puppeteer-extra/tree/master/packages/puppeteer-extra-plugin-recaptcha.

            • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
            • בכל נושא אפשר ליצור קשר dovid@tchumim.com
            dovidD nigunN 2 תגובות תגובה אחרונה
            1
            • dovidD dovid

              @nigun במקום לדמיין תעשה ואל תשכח לבוא לפה עם התוצאות.
              תוכל להיעזר ברפוזיטורי של מדומיינים: https://github.com/berstend/puppeteer-extra/tree/master/packages/puppeteer-extra-plugin-recaptcha.

              dovidD מחובר
              dovidD מחובר
              dovid
              ניהול
              כתב ב נערך לאחרונה על ידי
              #19

              פה אפשר לעשות טסטים:
              https://recaptcha-demo.appspot.com/recaptcha-v2-invisible.php

              • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
              • בכל נושא אפשר ליצור קשר dovid@tchumim.com
              תגובה 1 תגובה אחרונה
              0
              • שואףש מנותק
                שואףש מנותק
                שואף
                כתב ב נערך לאחרונה על ידי
                #20

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

                ליצירת קשר: admin@i-call.me

                הידד! גישה למייל גם בלי מחשב ואינטרנט!

                תגובה 1 תגובה אחרונה
                3
                • dovidD dovid

                  @nigun במקום לדמיין תעשה ואל תשכח לבוא לפה עם התוצאות.
                  תוכל להיעזר ברפוזיטורי של מדומיינים: https://github.com/berstend/puppeteer-extra/tree/master/packages/puppeteer-extra-plugin-recaptcha.

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

                  @dovid
                  קודם כל אני צריך ללמוד איך בונים בוט בלי קאפצ'ה
                  איך בוחרים את האלמנטים מתוך הHTML וJS
                  ואחר כך נראה איך עוקפים את הקאפצ'ה

                  מייל: nigun@duck.com

                  dovidD תגובה 1 תגובה אחרונה
                  0
                  • nigunN nigun

                    @dovid
                    קודם כל אני צריך ללמוד איך בונים בוט בלי קאפצ'ה
                    איך בוחרים את האלמנטים מתוך הHTML וJS
                    ואחר כך נראה איך עוקפים את הקאפצ'ה

                    dovidD מחובר
                    dovidD מחובר
                    dovid
                    ניהול
                    כתב ב נערך לאחרונה על ידי
                    #22

                    @nigun לא יכולתי לנסח את זה טוב יותר...

                    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                    nigunN תגובה 1 תגובה אחרונה
                    0
                    • dovidD dovid

                      @nigun לא יכולתי לנסח את זה טוב יותר...

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

                      אם זה מעניין מישהו
                      זה קוד שכתבתי עם chromedp (שזה כדומה לSelenium אבל בGO)
                      בשביל לבנות את הבסיס להגדרת פרופיל זמני דרך הטלפון

                      
                      package main
                      
                      import (
                      	"context"
                      	"log"
                      	"time"
                      	"github.com/chromedp/chromedp"
                      )
                      
                      func main() {
                      	
                      	opts := append(chromedp.DefaultExecAllocatorOptions[:],
                      		//הפעלת כרום במצב GPU
                                      chromedp.Flag("headless", false),
                      		chromedp.Flag("disable-gpu", false),
                      			)
                      	allocCtx, cancel := chromedp.NewExecAllocator(context.Background(), opts...)
                      	defer cancel()
                      
                      	ctx, cancel := chromedp.NewContext(allocCtx, chromedp.WithLogf(log.Printf))
                      	defer cancel()
                      
                      	err := chromedp.Run(ctx, sendkeys())
                      	if err != nil {
                      		log.Fatal(err)
                      	}
                      	// sendkeys sends
                      func sendkeys() chromedp.Tasks {
                      	return chromedp.Tasks{
                                      //ניווט לעמוד של הגדרות סינון
                      		chromedp.Navigate("https://netfree.link/user#/user/filter-settings"),
                      		//המתנה לשדה של שם משתמש וסיסמה להטען
                                      chromedp.WaitVisible(`//*[@name="phoneNumber"]`, chromedp.BySearch),
                      		chromedp.WaitVisible(`//*[@name="password"]`, chromedp.BySearch),
                      		//שליחת העריכם של שם משתמש וסיסמה
                                      chromedp.SendKeys(`input[name="phoneNumber"]`, "05212345", chromedp.NodeVisible),
                      		chromedp.SendKeys(`input[name="password"]`, "pass", chromedp.NodeVisible),
                      //כניסה
                      		chromedp.Click(`//*[@type="submit"]`, chromedp.BySearch),
                      				//המתנה 3 שניות
                                      chromedp.Sleep(3 * time.Second),
                      		//לחיצה על הפתור של הפעלת פרופיל זמני
                      		chromedp.Click(`button.btn.btn-default.btn-xs`, chromedp.ByQuery),
                      		//בחירת הפרופיל(חסום)
                      		chromedp.SendKeys(`//select[@ng-model="editTmp.profile"]`, "חסום", chromedp.BySearch),
                      		//הגרת הזמן
                                      chromedp.SendKeys(`//input[@ng-model="editTmp.time"]`, "1", chromedp.BySearch),
                      		//שמירה
                                      chromedp.Click(`.fa.fa-check`, chromedp.ByQuery),
                      		chromedp.Click(`.btn.btn-primary.pull-end`, chromedp.ByQuery),
                      		//סיסמת הגדרות פרופיל
                                      chromedp.SendKeys(`input.form-control`, "aaa1234", chromedp.ByQuery),
                      		
                      		chromedp.Sleep(3 * time.Second),
                      		}
                      }
                      
                      

                      אמנם קצת הסתבכתי עם זה
                      כי אין ID כמעט בכל הדף ואני צריך להשתמש רק בקלאס או ערכים אחרים וזה הקשה קצת על תפיסת האובייקט הנכון
                      אשמח לשמוע תגובות על זה
                      האם יש דרך יותר חכמה לישם את זה?
                      (אם מישהו רוצה את זה מקומפל בשביל לראות איך זה נראה על המחשב האישי? אני יכול לשלוח)

                      מייל: nigun@duck.com

                      dovidD תגובה 1 תגובה אחרונה
                      1
                      • nigunN nigun

                        אם זה מעניין מישהו
                        זה קוד שכתבתי עם chromedp (שזה כדומה לSelenium אבל בGO)
                        בשביל לבנות את הבסיס להגדרת פרופיל זמני דרך הטלפון

                        
                        package main
                        
                        import (
                        	"context"
                        	"log"
                        	"time"
                        	"github.com/chromedp/chromedp"
                        )
                        
                        func main() {
                        	
                        	opts := append(chromedp.DefaultExecAllocatorOptions[:],
                        		//הפעלת כרום במצב GPU
                                        chromedp.Flag("headless", false),
                        		chromedp.Flag("disable-gpu", false),
                        			)
                        	allocCtx, cancel := chromedp.NewExecAllocator(context.Background(), opts...)
                        	defer cancel()
                        
                        	ctx, cancel := chromedp.NewContext(allocCtx, chromedp.WithLogf(log.Printf))
                        	defer cancel()
                        
                        	err := chromedp.Run(ctx, sendkeys())
                        	if err != nil {
                        		log.Fatal(err)
                        	}
                        	// sendkeys sends
                        func sendkeys() chromedp.Tasks {
                        	return chromedp.Tasks{
                                        //ניווט לעמוד של הגדרות סינון
                        		chromedp.Navigate("https://netfree.link/user#/user/filter-settings"),
                        		//המתנה לשדה של שם משתמש וסיסמה להטען
                                        chromedp.WaitVisible(`//*[@name="phoneNumber"]`, chromedp.BySearch),
                        		chromedp.WaitVisible(`//*[@name="password"]`, chromedp.BySearch),
                        		//שליחת העריכם של שם משתמש וסיסמה
                                        chromedp.SendKeys(`input[name="phoneNumber"]`, "05212345", chromedp.NodeVisible),
                        		chromedp.SendKeys(`input[name="password"]`, "pass", chromedp.NodeVisible),
                        //כניסה
                        		chromedp.Click(`//*[@type="submit"]`, chromedp.BySearch),
                        				//המתנה 3 שניות
                                        chromedp.Sleep(3 * time.Second),
                        		//לחיצה על הפתור של הפעלת פרופיל זמני
                        		chromedp.Click(`button.btn.btn-default.btn-xs`, chromedp.ByQuery),
                        		//בחירת הפרופיל(חסום)
                        		chromedp.SendKeys(`//select[@ng-model="editTmp.profile"]`, "חסום", chromedp.BySearch),
                        		//הגרת הזמן
                                        chromedp.SendKeys(`//input[@ng-model="editTmp.time"]`, "1", chromedp.BySearch),
                        		//שמירה
                                        chromedp.Click(`.fa.fa-check`, chromedp.ByQuery),
                        		chromedp.Click(`.btn.btn-primary.pull-end`, chromedp.ByQuery),
                        		//סיסמת הגדרות פרופיל
                                        chromedp.SendKeys(`input.form-control`, "aaa1234", chromedp.ByQuery),
                        		
                        		chromedp.Sleep(3 * time.Second),
                        		}
                        }
                        
                        

                        אמנם קצת הסתבכתי עם זה
                        כי אין ID כמעט בכל הדף ואני צריך להשתמש רק בקלאס או ערכים אחרים וזה הקשה קצת על תפיסת האובייקט הנכון
                        אשמח לשמוע תגובות על זה
                        האם יש דרך יותר חכמה לישם את זה?
                        (אם מישהו רוצה את זה מקומפל בשביל לראות איך זה נראה על המחשב האישי? אני יכול לשלוח)

                        dovidD מחובר
                        dovidD מחובר
                        dovid
                        ניהול
                        כתב ב נערך לאחרונה על ידי
                        #24

                        @nigun אמר באיך בונים בוט מושלם?:

                        האם יש דרך יותר חכמה לישם את זה?

                        @dovid אמר באיך בונים בוט מושלם?:

                        הפשוטה ביותר (מהפן התכנותי/טכני של הפעולה עצמה) זה לעשות מיני "הנדסה לאחור" לאתר,
                        ופשוט לעשות אותו דבר. בלי עכבר ובלי בוט. למשל בלוגין לאתר זה לאחזר את AntiForgeryToken ואח"כ לשלוח פוסט איתו ועם שם המשתמש וסיסמה. ב99% מהאתרים והפעולות זה עובד יופי.

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

                        • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                        • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                        nigunN 2 תגובות תגובה אחרונה
                        0
                        • dovidD dovid

                          @nigun אמר באיך בונים בוט מושלם?:

                          האם יש דרך יותר חכמה לישם את זה?

                          @dovid אמר באיך בונים בוט מושלם?:

                          הפשוטה ביותר (מהפן התכנותי/טכני של הפעולה עצמה) זה לעשות מיני "הנדסה לאחור" לאתר,
                          ופשוט לעשות אותו דבר. בלי עכבר ובלי בוט. למשל בלוגין לאתר זה לאחזר את AntiForgeryToken ואח"כ לשלוח פוסט איתו ועם שם המשתמש וסיסמה. ב99% מהאתרים והפעולות זה עובד יופי.

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

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

                          @dovid
                          זה טוב ללוגאין
                          אבל לשאר ההגדרות לא הבנתי איך אני יכול לשלוח את הערכים בלי בוט

                          מייל: nigun@duck.com

                          dovidD 2 תגובות תגובה אחרונה
                          0
                          • nigunN nigun

                            @dovid
                            זה טוב ללוגאין
                            אבל לשאר ההגדרות לא הבנתי איך אני יכול לשלוח את הערכים בלי בוט

                            dovidD מחובר
                            dovidD מחובר
                            dovid
                            ניהול
                            כתב ב נערך לאחרונה על ידי dovid
                            #26

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

                            • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                            • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                            nigunN תגובה 1 תגובה אחרונה
                            2
                            • dovidD dovid

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

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

                              @dovid
                              לא הבנתי , איפה כתבתי שהתוכנה לא יכולה לשלוח ערכים שהדפדפן יכול לשלוח?

                              מייל: nigun@duck.com

                              תגובה 1 תגובה אחרונה
                              0
                              • nigunN nigun

                                @dovid
                                זה טוב ללוגאין
                                אבל לשאר ההגדרות לא הבנתי איך אני יכול לשלוח את הערכים בלי בוט

                                dovidD מחובר
                                dovidD מחובר
                                dovid
                                ניהול
                                כתב ב נערך לאחרונה על ידי
                                #28

                                @nigun אמר באיך בונים בוט מושלם?:

                                זה טוב ללוגאין
                                אבל לשאר ההגדרות לא הבנתי איך אני יכול לשלוח את הערכים בלי בוט

                                • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                                • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                                תגובה 1 תגובה אחרונה
                                0
                                • dovidD dovid

                                  @nigun אמר באיך בונים בוט מושלם?:

                                  האם יש דרך יותר חכמה לישם את זה?

                                  @dovid אמר באיך בונים בוט מושלם?:

                                  הפשוטה ביותר (מהפן התכנותי/טכני של הפעולה עצמה) זה לעשות מיני "הנדסה לאחור" לאתר,
                                  ופשוט לעשות אותו דבר. בלי עכבר ובלי בוט. למשל בלוגין לאתר זה לאחזר את AntiForgeryToken ואח"כ לשלוח פוסט איתו ועם שם המשתמש וסיסמה. ב99% מהאתרים והפעולות זה עובד יופי.

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

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

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

                                  מייל: nigun@duck.com

                                  dovidD תגובה 1 תגובה אחרונה
                                  0
                                  • nigunN nigun

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

                                    dovidD מחובר
                                    dovidD מחובר
                                    dovid
                                    ניהול
                                    כתב ב נערך לאחרונה על ידי dovid
                                    #30

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

                                    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                                    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                                    nigunN תגובה 1 תגובה אחרונה
                                    0
                                    • dovidD dovid

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

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

                                      @dovid

                                      1. כל מה שסלניום ודומיו עושים זה שימוש בAPI של כרום
                                        שימוש בAPI של כרום לבד יהיה כנראה אפשרי אבל סתם מסובך

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

                                      3. כשאתה כתבת לי שאפשר לאחזר את AntiForgeryToken ולשלוח אותו בפוסט
                                        חשבתי שהשליחה נעשית בפוסט ישירות לכתובת ולא דרך דפדפן
                                        ולכן כתבתי שזה טוב ללוגאין אבל לשאר הפעולות אני צריך דפדפן (כתבתי בוט אבל הייתי צריך לכתוב סלניום וכו')
                                        ומה שהתקשתי זה בחיקוי פעולות הדפדפן אחד לאחד
                                        אמנם בסוף הצלחתי אבל אני מחפש דרך יותר פשוטה

                                      מייל: nigun@duck.com

                                      dovidD תגובה 1 תגובה אחרונה
                                      0
                                      • nigunN nigun

                                        @dovid

                                        1. כל מה שסלניום ודומיו עושים זה שימוש בAPI של כרום
                                          שימוש בAPI של כרום לבד יהיה כנראה אפשרי אבל סתם מסובך

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

                                        3. כשאתה כתבת לי שאפשר לאחזר את AntiForgeryToken ולשלוח אותו בפוסט
                                          חשבתי שהשליחה נעשית בפוסט ישירות לכתובת ולא דרך דפדפן
                                          ולכן כתבתי שזה טוב ללוגאין אבל לשאר הפעולות אני צריך דפדפן (כתבתי בוט אבל הייתי צריך לכתוב סלניום וכו')
                                          ומה שהתקשתי זה בחיקוי פעולות הדפדפן אחד לאחד
                                          אמנם בסוף הצלחתי אבל אני מחפש דרך יותר פשוטה

                                        dovidD מחובר
                                        dovidD מחובר
                                        dovid
                                        ניהול
                                        כתב ב נערך לאחרונה על ידי dovid
                                        #32

                                        @nigun

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

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

                                        • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                                        • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                                        nigunN תגובה 1 תגובה אחרונה
                                        1
                                        • dovidD dovid

                                          @nigun

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

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

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

                                          @dovid

                                          1. יכול להיות שיש לי קושי ללמוד מאחרים
                                            אבל הסיבה שאני שאני לא שואל איך עושים X זה פשוט כי יש את stackoverflow שלרוב בחיפוש פשוט בגוגל אני מוצא את התשובה ואין סיבה לשאול את זה בפורום הז אא"כ אני לא מוצא את מילות החיפוש הנכונות
                                            אבל בנושאים יותר כללים אני מתקשה בהבנת הדברים בפורומים ובפוסטים באנגלית (בעיקר כי אני קורא לאט)
                                            אז הפורום הזה זה נראה לי מקום טוב ללמוד על מושגים חדשים וקונספטים מופשטים וכדו'
                                            אם אני מפסיד משהו מזה שאני לא שואל שאלות פשוטות? אשמח לשמוע מה בדיוק אני מפסיד.
                                          2. במקרה שלנו לא הבנתי איך אני יכול לשלוח את הערכים שבשונה משם מתשתמש וסיסמה הם לא נשלחים בפוסט לHTTP
                                            אלא משהו בJS (שאני ממש לא מבין בזה ואני לומד את זה עכשיו בעל כורחי בדרך עקיפה (שכמובן זה לא חכם אבל כמו שכתבתי בעבר קשה לי ללמוד דברים שלא נצרכים לי כרגע))
                                            אני חשבתי שכנראה הבקשות נשלחים בוובסוקט או משהו כזה
                                            ואין לי מושג איך אפשר לשלוח אותם בלי דפדפן

                                          מייל: nigun@duck.com

                                          WWWW dovidD 2 תגובות תגובה אחרונה
                                          0
                                          תגובה
                                          • תגובה כנושא
                                          התחברו כדי לפרסם תגובה
                                          • מהישן לחדש
                                          • מהחדש לישן
                                          • הכי הרבה הצבעות


                                          • 1
                                          • 2
                                          • 3
                                          בא תתחבר לדף היומי!
                                          • התחברות

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

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