ஏற்கனவே உள்ள 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-இன் தனி செயல்முறையைக் கட்டமைக்காது.

நிறுவலுக்குப் பிறகு பயன்பாட்டின் வழக்கமான சூழல் வாழ்க்கைச் சுழற்சியைத் தொடரவும். ஏற்கனவே இயங்கும் மொழிபெயர்ப்பானில் நிறுவுவது அதன் தற்போதைய இறக்குமதிகள், தற்காலிக சேமிப்புகள் அல்லது பாதைகள் புதிய தொகுப்பை உடனடியாகப் பிரதிபலிக்கும் என்பதற்கு உத்தரவாதம் அளிக்காது.

தொடர்புடைய கட்டுரைகள்