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 را غیرفعال می‌کند. اگر جریان کار به آن‌ها نیاز دارد، صریحاً فراهم کنید، یا هنگام انتخاب سیاستی دیگر محیط را در نظر بگیرید.

مقالات مرتبط