Zachowaj wysyłanie formularza MechanicalSoup na tej samej trasie proxy
Dołącz skonfigurowaną sesję Requests do StatefulBrowser, aby otwarcie strony i wysłanie formularza korzystały z tej samej trasy i tych samych plików cookie.
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)Wybierz punkt wyjścia przed otwarciem strony formularza. W przypadku publicznego formularza, w którym dozwolone są publiczne proxy, można wybrać kandydata z listy proxy HTTP. Zbuduj sesję i przekaż ją do StatefulBrowser, jak pokazano. Używaj tej samej przeglądarki do open, wyboru formularza i submit_selected; zamknij ją przez browser.close(), gdy praca się zakończy.
Dzięki temu polityka proxy i stan plików cookie pozostają w sesji używanej przez całą wymianę. Argument proxies podany przy pierwszym pobraniu nie konfiguruje automatycznie późniejszego wysłania.
trust_env = False czyni trasę tego przykładu niezależną od ustawień proxy ze środowiska Requests. Wyłącza też wybór pakietu CA ze środowiska oraz uwierzytelnianie .netrc. Podaj je jawnie, jeśli przepływ ich potrzebuje, albo uwzględnij środowisko, wybierając inną politykę.