Saglabājiet MechanicalSoup formas iesniegšanu tajā pašā starpniekservera maršrutā
Pievienojiet konfigurētu Requests sesiju StatefulBrowser, lai lapas atvēršana un formas iesniegšana izmantotu vienu maršrutu un sīkfailus.
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)Izvēlieties izejas punktu pirms formas lapas atvēršanas. Publiskai formai, kur atļauti publiski starpniekserveri, varat izvēlēties kandidātu no HTTP starpniekserveru saraksta. Izveidojiet sesiju un nododiet to StatefulBrowser, kā parādīts. Izmantojiet to pašu pārlūku open, formas izvēlei un submit_selected; aizveriet to ar browser.close(), kad darbs beidzas.
Tādējādi starpniekservera politika un sīkfailu stāvoklis paliek sesijā, kas tiek izmantota visai apmaiņai. proxies arguments, kas nodots pirmajā ielādē, automātiski nekonfigurē vēlāku iesniegšanu.
trust_env = False padara šī piemēra maršrutu neatkarīgu no Requests vides starpniekservera iestatījumiem. Tas arī izslēdz no vides balstītu CA pakotnes izvēli un .netrc autentifikāciju. Norādiet tos skaidri, ja darbam tie nepieciešami, vai ņemiet vērā vidi, izvēloties citu politiku.