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)

Wählen Sie den Endpunkt, bevor Sie die Formularseite öffnen. Für ein öffentliches Formular, bei dem öffentliche Proxys erlaubt sind, kann es ein Kandidat aus der HTTP-Proxy-Liste sein. Bauen Sie die Sitzung auf und übergeben Sie sie wie gezeigt an StatefulBrowser. Verwenden Sie denselben Browser für open, die Formularauswahl und submit_selected; schließen Sie ihn mit browser.close(), wenn der Ablauf endet.

So bleiben Proxy-Richtlinie und Cookie-Zustand in der Sitzung, die für den gesamten Austausch verwendet wird. Ein proxies-Argument, das einem einzelnen ersten Abruf übergeben wird, konfiguriert eine spätere Übermittlung nicht automatisch.

trust_env = False macht die Route dieses Beispiels unabhängig von den Proxy-Einstellungen der Umgebung von Requests. Es deaktiviert außerdem die Auswahl des CA-Bündels aus der Umgebung und die Authentifizierung per .netrc. Geben Sie diese explizit an, wenn der Ablauf sie benötigt, oder berücksichtigen Sie die Umgebung bei der Wahl einer anderen Richtlinie.

Ähnliche Artikel