Udržte odesílání formuláře v MechanicalSoup na stejné proxy trase
Připojte nakonfigurovanou relaci Requests k StatefulBrowser, aby otevření stránky a odeslání formuláře sdílely trasu i cookies.
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)Zvolte koncový bod dříve, než otevřete stránku formuláře. U veřejného formuláře, kde jsou povoleny veřejné proxy, to může být kandidát ze seznamu HTTP proxy. Sestavte relaci a předejte ji StatefulBrowser podle ukázky. Stejný prohlížeč použijte pro open, výběr formuláře i submit_selected; po skončení postupu jej zavřete pomocí browser.close().
Tím zůstává proxy politika i stav cookies v relaci, která se používá pro celou výměnu. Argument proxies předaný jednomu počátečnímu požadavku automaticky nenastaví pozdější odeslání.
trust_env = False činí trasu tohoto příkladu nezávislou na proxy nastaveních prostředí v Requests. Zároveň vypíná výběr CA balíku z prostředí a ověřování pomocí .netrc. Pokud je postup potřebuje, předejte je explicitně, nebo při volbě jiné politiky zohledněte prostředí.