Python subprocess.run: sii hal amarrood carruur ah deegaan proxy u gaar ah
U gudbi deegaan la koobiyeeyay subprocess.run marka hal amarrood carruur uu u baahan yahay proxy adigoon beddelin deegaanka Python shaqo kale.
Barnaamij Python ah wuxuu siin karaa hal amarrood carruur deegaan proxy u gaar ah. Koobiyeeyo qiyamka la dhaxlay, beddel koobiga, ka dibna u gudbi subprocess.run:
import os
import subprocess
child_env = os.environ.copy()
child_env["https_proxy"] = "http://proxy.example:8080"
subprocess.run(
["curl", "--head", "https://www.example.com/"],
env=child_env,
check=True,
timeout=30,
)Tusaalahan wuxuu u malaynayaa in curl horey u jiro. Codsigeeda HTTPS wuxuu isticmaali karaa proxy HTTP oo taageera tunnelka loo baahan yahay. Baaritaankan goob dadweyne oo aan la habayn aqoonsiga proxy, musharrax ka mid ah liiska proxy HTTP ayaa beddeli kara dhammaadka tusaalaha. Ilmuhu weli wuxuu helaa inta kale ee deegaanka la koobiyeeyay, oo ay ku jiraan habaynta dhaqaaqa kasta oo khuseeya.
Gudbinta env waxay siinaysaa wicitaankan deegaankaas. Koobigu wuxuu ka hortagaa in os.environ loo beddelo shaqo kale oo ku jirta habka Python.
Si toos ah ugu qorista os.environ sidoo kale waa macne leh: waxay cusboonaysiisaa deegaanka habka Python waxayna saameyn kartaa carruurta la bilaabo ka dib. Ma cusboonaysiiso shellka bilaabay Python, ma aha codsi aan xiriir la lahayn ama ilmo horey u socda.
Haddii ujeeddadu tahay in la beddelo amarrada mustaqbalka ee shellkaaga isdhexgalka, beddelkaas ku samee shellka. Haddii hal qalab la bilaabay oo keliya uu u baahan yahay waddo kale, deegaankiisa ku hay meel u dhow wicitaanka subprocess sida la muujiyay.