pandas-datareader akzeptiert für seine HTTP-Arbeit eine Requests-Session. Ein FRED-Reader kann beispielsweise eine von der Anwendung konfigurierte Session verwenden:

import requests
from pandas_datareader import data as web

with requests.Session() as session:
    session.proxies.update({
        "http": "http://proxy.example.net:8080",
        "https": "http://proxy.example.net:8080",
    })
    frame = web.DataReader(
        "GDP", "fred", start, end, session=session
    )

start und end sind die von der Anwendung angeforderten Daten. Der Kontext schließt die Session, sobald der Reader fertig ist. Ein öffentlicher HTTP-Endpunkt aus der HTTP-Proxy-Liste kann die Adresse in der Proxy-Zuordnung dieser Session bereitstellen.

Die Umgebungsintegration von Requests bleibt in diesem Beispiel aktiv. Wenn die Anwendung eine ausdrückliche Route unabhängig von den Proxy-Werten der Umgebung benötigt, setzen Sie session.trust_env=False und stellen Sie ein erforderliches CA-Bundle oder eine aus .netrc abgeleitete Authentifizierung separat bereit.

Wählen Sie einen Reader, den die installierte pandas-datareader-Version unterstützt. Eine eingestellte Anbieter-API oder ein geändertes Symbolformat kann fehlschlagen, nachdem die Proxy-Verbindung erfolgreich war; das Setzen der Session stellt einen entfernten Datenendpunkt nicht wieder her.

Ähnliche Artikel