පහත ඇමතුම් වෙන වෙනම shell ක්‍රියාවලි දෙකක් සාදයි:

os.system('unset http_proxy')
os.system('curl https://example.com/')

පළමු shell තමන්ගේ පරිසරයෙන් විචල්‍යයක් ඉවත් කර අවසන් වේ. Python ක්‍රියාවලියේ මුල් අගය තවමත් ඇත. දෙවන shell එය නැවත උරුම වේ.

ඔබ අදහස් කළ පරිසරය දරුවාට දෙන්න

එක් විධානයක් පමණක් උරුම proxy විචල්‍ය නොමැතිව ධාවනය විය යුතු විට, Python පරිසරය පිටපත් කර එම පිටපත දරුවාට ලබා දෙන්න:

import os
import subprocess

env = os.environ.copy()
for name in ('http_proxy', 'https_proxy', 'all_proxy',
             'HTTP_PROXY', 'HTTPS_PROXY', 'ALL_PROXY'):
    env.pop(name, None)
subprocess.run(['curl', '--proxy', '', 'https://example.com/'],
               env=env, check=True)

curl හි පැහැදිලි හිස් proxy සැකසුම curl හිම කොන්ෆිගරේෂනයෙන් සිදුවන proxy තේරීම ද අභිබවා යයි. පරිසරයේ පිටපත විධානයට අවශ්‍ය විය හැකි වෙනත් අගයන් රැක ගනී. ඒ වෙනුවට හිස් පරිසරයක් ලබා දීම ධාවන ගොනු සෙවුම් මාර්ග සහ අදාළ නොවන යෙදුම් සැකසුම් ඉවත් කළ හැක.

Python ක්‍රියාවලිය තුළම පසු ක්‍රියා සඳහා, os.environ හිතාමතා වෙනස් කරන්න. එය අලුතින් සාදන දරුවන් උරුම කරන දේට බලපායි; එය මාපිය ටර්මිනලයේ පරිසරය නැවත ලියන්නේ නැත, තම සැකසුම් දැනටමත් ගෙන ඇති HTTP සේවාදායකයන් අනිවාර්යයෙන් නැවත වින්‍යාස කරන්නේ ද නැත.

subprocess API env තර්කය ලේඛනගත කරයි, os.environ Python හි ක්‍රියාවලි පරිසරය විස්තර කරයි. shell විධානයක් සාර්ථකත්වය වාර්තා කරන අතරම ඊළඟ ඉල්ලීම තවමත් පැරණි proxy භාවිත කරන්නේ මෙම වෙනස් විෂය පථ නිසාය.

අවසාන වශයෙන්, ඔබ සැබවින්ම ධාවනය කරන සේවාදායකය පරීක්ෂා කරන්න. පරිසර විචල්‍ය යනු කොන්ෆිගරේෂන් ආදානයක් පමණි. පැහැදිලි proxy විකල්පයක් හෝ යෙදුමක තම සැකසුම එම විචල්‍ය නැති වූ පසුව ද proxy තේරීම දිගටම කළ හැක.

අදාළ ලිපි