Hold MechanicalSoup-skjemainnsendingen på samme proxy-rute
Koble en konfigurert Requests-økt til StatefulBrowser slik at åpning av siden og innsending av skjemaet deler samme rute og informasjonskapsler.
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)Velg endepunktet før du åpner skjemasiden. For et offentlig skjema der offentlige proxyer er tillatt, kan det være en kandidat fra HTTP-proxy-listen. Bygg økten og send den til StatefulBrowser som vist. Bruk den samme nettleseren til open, skjemavalget og submit_selected; lukk den med browser.close() når arbeidsflyten er over.
Slik blir proxy-policyen og informasjonskapseltilstanden værende i økten som brukes gjennom hele utvekslingen. Et proxies-argument gitt til én innledende henting konfigurerer ikke automatisk en senere innsending.
trust_env = False gjør ruten i dette eksempelet uavhengig av Requests' proxyinnstillinger fra miljøet. Det deaktiverer også miljøbasert valg av CA-pakke og .netrc-autentisering. Oppgi disse eksplisitt hvis arbeidsflyten trenger dem, eller ta hensyn til miljøet når du velger en annen policy.