Bei einer bestehenden RoboBrowser-Anwendung übergeben Sie die Requests-Session, die die Proxy-Standardwerte besitzt:

from requests import Session
from robobrowser import RoboBrowser

session = Session()
session.proxies.update({
    'http': 'http://proxy.example.net:8080',
    'https': 'http://proxy.example.net:8080',
})

browser = RoboBrowser(session=session, parser='html.parser')
browser.open('https://example.net/form')

Die HTTP-Proxy-Liste kann Adressen für diese Standardwerte liefern, wenn zulässige Anfragen an öffentliche Seiten ohne Proxy-Authentifizierung gestellt werden. RoboBrowser verwendet diese Session für seine Anfragen. Dasselbe Objekt hält auch Cookies und anderen Requests-Zustand, während die Anwendung navigiert oder Formulare absendet. Ein weiterer Browser ohne Übergabe der Session erzeugt eine weitere Standard-Session.

Für einen bestimmten Vorgang akzeptieren die öffentlichen Schnittstellen open, follow_link und submit_form von RoboBrowser Anfrageargumente, einschließlich Proxy-Optionen. Das bietet eine Wahl auf Vorgangsebene, wenn die Standardwerte nicht für jede Aktion die gewünschte Route sind.

Requests hat weiterhin sein normales Verhalten beim Zusammenführen der Umgebung. Behandeln Sie die Proxys der Session als Client-Standardwerte, und prüfen Sie widersprüchliche Umgebungseinstellungen, wenn ein Vorgang einen anderen Endpunkt wählt.

Ähnliche Artikel