நீங்கள் தொடங்கும் pip செயல்முறைக்கு ப்ராக்ஸியை அனுப்பவும்
நோக்கம் கொண்ட Python மொழிபெயர்ப்பான் வழியாக pip-ஐ அழைத்து, pip-இன் உள் பகுதிகளை இறக்குமதி செய்வதற்குப் பதிலாக --proxy-ஐ தனி subprocess வாதமாக வழங்கவும்.
ஏற்கனவே உள்ள 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 மொழிபெயர்ப்பானைத் தேர்ந்தெடுக்கிறது, எனவே PATH-இல் இருந்து மற்றொரு நிறுவலின் pip தற்செயலாக அழைக்கப்படுவதைத் தவிர்க்கிறது.
ஒவ்வொரு வாதமும் தனி பட்டியல் உறுப்பை ஆக்கிரமிக்கிறது. ஷெல் தேவையில்லை, ப்ராக்ஸி URL-க்கு கூடுதல் ஜோடி உட்பொதிக்கப்பட்ட ஷெல் மேற்கோள் தேவையில்லை. நிறுவல் தோல்வியடைந்தால் check=True CalledProcessError-ஐ எழுப்புகிறது, இது provisioning பணிப்பாய்வு அந்தத் தோல்வியைக் கையாள அனுமதிக்கிறது.
பதிவிறக்க பாதையை இந்த pip அழைப்பில் அல்லது அதன் subprocess சூழலில் கட்டமைக்கவும். மூல நிரலில் வேறெங்கோ கட்டமைக்கப்பட்ட Requests அமர்வு pip-இன் தனி செயல்முறையைக் கட்டமைக்காது.
நிறுவலுக்குப் பிறகு பயன்பாட்டின் வழக்கமான சூழல் வாழ்க்கைச் சுழற்சியைத் தொடரவும். ஏற்கனவே இயங்கும் மொழிபெயர்ப்பானில் நிறுவுவது அதன் தற்போதைய இறக்குமதிகள், தற்காலிக சேமிப்புகள் அல்லது பாதைகள் புதிய தொகுப்பை உடனடியாகப் பிரதிபலிக்கும் என்பதற்கு உத்தரவாதம் அளிக்காது.