פֿאַרביי דעם פּראָקסי צו דעם pip פּראָצעס וואָס איר סטאַרטעט
רופֿט pip דורך דעם בדעה־טראַכטן Python אינטערפּרעטער און גיט --proxy ווי אַ באַזונדער subprocess אַרגומענט אַנשטאָט אימפּאָרטירן pip'ס אינעווייניק.
ווען אַ פֿאַרהאַנדענע provisioning סקריפּט דאַרף לויפֿן pip דורך אַ פּראָקסי, סטאַרטעט pip ווי אַ subprocess. pip'ס אינעווייניקסטע Python פֿונקציעס זענען נישט קיין געשטיצטע אַפּליקאַציע API.
import subprocess
import sys
subprocess.run([
sys.executable,
'-m', 'pip', 'install',
'--proxy', 'http://proxy.example:8080',
'example-package',
], check=True)
ניצט דעם בדעה־טראַכטן פּאַקעט און פּראָקסי ענדפּוינט. פֿאַר אָפֿנטלעכע פּאַקעט אַראָפּלאָדונגען וואָס זענען דערלויבט דורך אַן אָפֿנטלעכן מיטלער, די HTTP פּראָקסי ליסטע שטעלט צו קאַנדידאַטן פֿאַר דעם HTTP פּראָקסי אַרגומענט. sys.executable קלייבט אויס דעם Python אינטערפּרעטער וואָס לויפֿט דעם סקריפּט, אַזוי מע פֿאַרמייט אַצונד צו רופֿן אַן אַנדער אינסטאַלאַציע'ס pip פֿון PATH.
יעדער אַרגומענט פֿאַרנעמט אַ באַזונדער ליסטע עלעמענט. מען דאַרף נישט קיין shell, און דער פּראָקסי URL דאַרף נישט קיין נאָכפּאָר פּאָר פֿון איינגעבויטע shell ציטאַטן. check=True הייבט CalledProcessError אויב די אינסטאַלאַציע פֿאַלט, וואָס לאָזט דעם provisioning אַרבעטספֿלוס באַהאַנדלען דעם דורכפֿאַל.
קאָנפֿיגורירט דעם אַראָפּלאָדן וועג אויף דעם pip רוף אָדער אין זײַן subprocess סבֿיבֿה. אַ Requests סעסיע וואָס איז קאָנפֿיגורירט אַנדערש אין דעם עלטער פּראָגראַם קאָנפֿיגורירט נישט pip'ס באַזונדער פּראָצעס.
נאָך דער אינסטאַלאַציע, פֿירט ווײַטער דעם נאָרמאַלן סבֿיבֿה־לעבנס־ציקל פֿון דער אַפּליקאַציע. אינסטאַלירן אין אַן אינטערפּרעטער וואָס לויפֿט שוין גיט נישט קיין זיכערקייט אַז זײַנע איצטיקע אימפּאָרטן, קאַשעס אָדער וועגן שפּיגלען באַלד אָפּ דעם נײַעם פּאַקעט.