import mechanicalsoup
import requests

session = requests.Session()
session.trust_env = False
session.proxies.update({
    "http": "http://proxy.example.net:8080",
    "https": "http://proxy.example.net:8080",
})

browser = mechanicalsoup.StatefulBrowser(session=session)

בחרו את נקודת הקצה לפני פתיחת עמוד הטופס. בטופס ציבורי שבו פרוקסי ציבוריים מותרים, זה יכול להיות מועמד מתוך רשימת פרוקסי HTTP. בנו את הסשן והעבירו אותו אל StatefulBrowser כפי שמוצג. השתמשו באותו דפדפן עבור open, בחירת הטופס ו-submit_selected; סגרו אותו עם browser.close() כשזרימת העבודה מסתיימת.

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

trust_env = False הופך את המסלול בדוגמה הזו לבלתי תלוי בהגדרות הפרוקסי הסביבתיות של Requests. הוא גם מכבה את בחירת חבילת ה-CA מהסביבה ואת אימות .netrc. ספקו אותם במפורש אם זרימת העבודה זקוקה להם, או התחשבו בסביבה בבחירת מדיניות אחרת.

מאמרים קשורים