גיט ProxyHandler אַ ליידיקע מאַפּע ווען איין urllib-opener זאָל זיך פֿאַרבינדן דירעקט:

from urllib.request import ProxyHandler, build_opener

direct = build_opener(ProxyHandler({}))

with direct.open("https://example.com/", timeout=10) as response:
    print(response.status)

דאָס ליידיקע ווערטערבוך גיט נישט קיין פּראָקסי־מאַרשרוטן. אויב מען לאָזט די מאַפּע אויס, געפֿינט דער האַנדלער פּראָקסיס פֿון דער סבֿיבֿה און די פּלאַטפֿאָרמע־אײַנשטעלונגען. די צוויי אופֿנים פֿון שאַפֿן דריקן אויס אַנדערע פּאָליטיקעס.

דאָס בײַשפּיל ניצט די סטאַנדאַרט־ביבליאָטעק פֿון Python און האַלט בײַ די געוויינטלעכע HTTPS־קאָנטראָל. דער with־בלאָק מאַכט צו דעם ענטפֿער, אויך ווען אַן אויסנאַם פֿירט אַרויס פֿונעם בלאָק.

דירעקטע בקשות און בקשות דורך פּראָקסי אין דער זעלבער אַפּליקאַציע

צוויי openers קענען טראָגן די צוויי פּאָליטיקעס אָן צו ענדערן סבֿיבֿה־וואַריאַבלען צווישן רופֿן:

from urllib.request import ProxyHandler, build_opener

direct = build_opener(ProxyHandler({}))
proxied = build_opener(ProxyHandler({
    "http": "http://127.0.0.1:8080",
    "https": "http://127.0.0.1:8080",
}))

with proxied.open("https://example.com/", timeout=10) as response:
    print(response.status)

פֿאַרבײַט דעם loopback־אַדרעס מיט אײַער HTTP־פּראָקסי, אָדער קלײַבט אַ קאַנדידאַט פֿון דער ליסטע פֿון HTTP־פּראָקסיס פֿאַרן פֿאַרגלײַך דורך פּראָקסי. ער קען פֿירן די פֿאַרבינדונג צום HTTPS־ציל דורך CONNECT ווען דער דינסט דערלויבט עס. דער פּראָטאָקאָל און די אידענטיפֿיקאַציע־שטיצע פֿונעם צוהערער מוזן פּאַסן צום האַנדלער.

לאָזט דעם פֿעליק־opener אומגעענדערט

רופֿט direct.open אָדער proxied.open דורך דעם אָביעקט וואָס איז פֿאַראַנטוואָרטלעך פֿאַרן מאַרשרוט. install_opener ענדערט דעם פֿעליק־אָביעקט פֿאַרן גאַנצן פּראָצעס וואָס די באַקוועמע urllib־פֿונקציעס ניצן; דערפֿאַר קען אַ ביבליאָטעק וואָס ניצט עס ווירקן אויף אומפֿאַרבונדענעם קאָד. פֿאַרן באַזונדערן opener אויבן איז עס נישט נייטיק.

דער אַרגומענט timeout איז אַן אײַנשטעלונג פֿאַר אַן אָפּעראַציע, נישט קיין גאַנצער רעאַלצײַט־טערמין פֿאַר יעדער איבערטראָגונג. לייענט נאָר די נייטיקע דאַטן און ניצט אַ טערמין אויף אַ העכערער מדרגה אויב די אַרבעט האָט אַ שטרענגן גאַנץ־צײַטבודזשעט.

די דאָזיקע opener־אָביעקטן ענדערן נישט דעם קליענט פֿון אַן אַנדער ביבליאָטעק, אַ שוין עקזיסטירנדיקן פּראָצעס אָדער די פּראָקסי־אײַנשטעלונגען פֿון אַ בלעטערער.

פֿאַרבונדענע אַרטיקלען