השתמשו בסוכן המשתמש וברמזי הלקוח שהוחזרו

מאת solvethree2 דקות קריאה

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

בדף הזה

החליפו את כותרות הדפדפן הקיימות

כותרות בבקשה היוצאת ליעד
כותרות בבקשה היוצאת ליעד
כותרת HTTPערך מהפתרון המוכן
User-Agentsolution.userAgent
sec-ch-uasolution.secChUa

אל תשאירו user agent אקראי מכלי איסוף הנתונים שלכם או מסשן HTTP קיים. כך תוחלף זהות הדפדפן שהוחזרה עם הפתרון בזהות לא קשורה. עדכון של sec-ch-ua בלבד משאיר שתי כותרות שמתארות דפדפנים שונים.

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

השתמשו בפרוקסי שהצליח

התחילו מתוצאה במצב ready; המצבים pending ו-solving לא מכילים פתרון שמיש. המתודה solve של ה-SDK ממתינה לתוצאה מוכנה או זורקת שגיאה.

למשימה שנשלחה עם proxy יחיד, השתמשו שוב באותו פרוקסי בבקשה ליעד. אם סיפקתם proxyCandidates, בחרו את הפרוקסי שהצליח באמצעות successful_proxy(original_task, ready_result) ב-Python או successfulProxy(originalTask, readyResult) ב-JavaScript. אל תשתמשו פשוט במועמד הראשון.

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

שלחו את הבקשה ליעד ב-Python או ב-Node.js

הדוגמאות האלה שולחות טוקן של reCAPTCHA v3 Enterprise. ב-Python, ‏solution הוא מילון הפתרון מתוך התוצאה המוכנה. ב-Node.js, ‏result הוא המשימה המוכנה. שתי הדוגמאות מגדירות במפורש את הכותרות שהוחזרו ומנתבות את הבקשה דרך הפרוקסי שנבחר.

Python requests · החלת פתרון מוכן
# Continue after client.solve(). Install requests separately: pip install requests.
import requests

# This example endpoint accepts the standard reCAPTCHA form field.
# Use your application's real URL, form fields, CSRF token and session.
response = requests.post(
    "https://accounts.example.com/login",
    data={"g-recaptcha-response": solution["token"]},
    headers={
        "User-Agent": solution["userAgent"],
        "sec-ch-ua": solution["secChUa"],
    },
    proxies={"http": request["proxy"], "https": request["proxy"]},
    timeout=30,
    allow_redirects=False,
)
# Inspect the application's response to determine whether it accepted the request.
print("Application HTTP status:", response.status_code)

החליפו את כתובת ההתחברות שבדוגמה בכתובת ה-URL של היעד המיועד, והשתמשו בשדות הטופס, בטוקן ה-CSRF ובסשן בפועל של אותה אפליקציה. הדוגמאות מניחות שהאפליקציה מקבלת את הטוקן בשדה g-recaptcha-response; כותרות הדפדפן שהוחזרו צריכות להופיע בכותרות ה-HTTP, ולא בגוף הטופס.

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

הפעלת המשימה הראשונה שלך.

התחילו עם $5 בקרדיט לסביבת העבודה.

יצירת סביבת עבודה
השתמשו בסוכן המשתמש וברמזי הלקוח שהוחזרו · solvethree