Python Requests: mewngofnodion Basic ar wahân ar gyfer y proxï a'r wefan
Anfonwch fewngofnod Basic y proxï drwy ei URL, a mewngofnod Basic y wefan drwy'r ddadl auth yn Requests.
Mae proxï'r swyddfa yn gofyn am un cyfrif. Mae'r wefan y tu ôl iddo yn gofyn am un arall. Mae gan Requests fewnbynnau ar wahân ar gyfer y ddau fewngofnod Basic hynny: manylion mewngofnodi yn URL y proxï a dadl auth y cais.
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()
Daw'r pedwar newidyn cyfrif o ffurfweddiad manylion mewngofnodi'r rhaglen. Amgodio enw defnyddiwr a chyfrinair y proxï ar wahân sy'n cadw nodau fel arwydd at heb eu troi'n ffiniau URL.
Mae'r allwedd https yn y geiriadur yn dewis y llwybr hwn ar gyfer cyrchfan HTTPS. Mae ei werth yn dal i ddechrau gyda http:// oherwydd dyna'r protocol a ddefnyddir i gyrraedd y proxï enghreifftiol hwn.
Ar gyfer y cais HTTPS hwnnw, mae mewngofnod y proxï yn perthyn i'r cyfnewid CONNECT. Mae mewngofnod y wefan yn perthyn i'r cais diweddarach drwy'r twnnel sefydledig. Mae gadael i'r addasydd ddeillio awdurdodiad y proxï o'i URL ei hun yn ei gadw ar y naid berthnasol; nid oes angen dosbarth dilysu cyfun ar gyfer yr achos Basic hwn.
Mae 407 yn nodi her y cyfryngwr. Mae 401 o'r wefan yn nodi her y gyrchfan. Defnyddiwch yr ymateb hwnnw i benderfynu pa un o'r ddau gyfrif a ffurfweddwyd sydd angen sylw.