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