La oficeja prokura servilo postulas unun konton. La retejo malantaŭ ĝi postulas alian. Requests havas apartajn enigojn por tiuj du Basic-ensalutoj: identigiloj en la URL de la prokura servilo kaj la argumento auth de la peto.

from urllib.parse import quote
import requests

proxy_url = (
    f"http://{quote(proxy_user, safe='')}:"
    f"{quote(proxy_password, safe='')}@proxy.example:8080"
)
response = requests.get(
    "https://reports.example/private/",
    proxies={"https": proxy_url},
    auth=(site_user, site_password),
    timeout=(5, 20),
)
response.raise_for_status()

La kvar kontaj variabloj venas el la agordo de identigiloj de la aplikaĵo. Kodi aparte la uzantnomon kaj pasvorton de la prokura servilo konservas signojn kiel at sen igi ilin URL-apartigiloj.

La ŝlosilo https en la vortaro elektas tiun vojon por HTTPS-celo. Ĝia valoro ankoraŭ komenciĝas per http://, ĉar tiu estas la protokolo uzata por atingi ĉi tiun specimenan prokurilon.

Por tiu HTTPS-peto, la ensaluto de la prokura servilo apartenas al la interŝanĝo CONNECT. La ensaluto de la retejo apartenas al la posta peto tra la starigita tunelo. Lasante la adaptilon derivi la prokuran rajtigon el ĝia propra URL, ĝi restas ĉe la koncerna salto; por ĉi tiu Basic-kazo ne necesas kombinita aŭtentiga klaso.

407 indikas la defion de la peranto. 401 de la retejo indikas la defion de la celloko. Uzu tiun respondon por decidi, kiun el la du agorditaj kontoj bezonas atenton.

Rilataj artikoloj