pip ਦੀ SOCKS ਨਿਰਭਰਤਾ ਨੂੰ ਆਫ਼ਲਾਈਨ ਬੂਟਸਟ੍ਰੈਪ ਕਰਨਾ
ਕਨੈਕਟ ਕੀਤੀ ਮਸ਼ੀਨ ਤੋਂ PySocks ਵ੍ਹੀਲ ਟ੍ਰਾਂਸਫਰ ਕਰੋ ਤਾਂ ਜੋ ਟਾਰਗੇਟ ਇੰਟਰਪ੍ਰਿਟਰ ਆਪਣੀ SOCKS ਪ੍ਰੌਕਸੀ ਵਰਤਣਾ ਸ਼ੁਰੂ ਕਰ ਸਕੇ।
pip ਦੇ SOCKS ਸਮਰਥਨ ਲਈ ਲੋੜ ਹੈ ਕਿ ਵਿਕਲਪਿਕ SOCKS ਨਿਰਭਰਤਾ ਉਸ Python ਇੰਟਰਪ੍ਰਿਟਰ ਲਈ ਉਪਲਬਧ ਹੋਵੇ ਜੋ pip ਚਲਾਉਂਦਾ ਹੈ। ਜੇ ਉਹ ਇੰਟਰਪ੍ਰਿਟਰ ਪੈਕੇਜ ਇੰਡੈਕਸ ਤੱਕ ਸਿਰਫ਼ SOCKS ਰਾਹੀਂ ਪਹੁੰਚ ਸਕਦਾ ਹੈ, ਤਾਂ ਪਹਿਲਾਂ ਕਿਸੇ ਹੋਰ ਕਨੈਕਟ ਕੀਤੀ ਮਸ਼ੀਨ ਉੱਤੇ ਨਿਰਭਰਤਾ ਲਿਆਓ।
ਕਨੈਕਟ ਕੀਤੀ ਮਸ਼ੀਨ ਉੱਤੇ ਇੱਕ ਛੋਟੀ ਵ੍ਹੀਲ ਡਾਇਰੈਕਟਰੀ ਤਿਆਰ ਕਰੋ:
python -m pip download --only-binary=:all: --dest wheelhouse PySocks
ਉਹ ਡਾਇਰੈਕਟਰੀ ਟਾਰਗੇਟ ਮਸ਼ੀਨ ਉੱਤੇ ਟ੍ਰਾਂਸਫਰ ਕਰੋ, ਫਿਰ ਸਥਾਨਕ ਇੰਸਟਾਲ ਲਈ ਉਸ ਦਾ ਮਨੋਨੀਤ ਇੰਟਰਪ੍ਰਿਟਰ ਵਰਤੋ:
python -m pip install --no-index --find-links wheelhouse PySocks
--no-index ਇਸ ਬੂਟਸਟ੍ਰੈਪ ਕਦਮ ਨੂੰ ਦਿੱਤੀਆਂ ਫਾਈਲਾਂ ਉੱਤੇ ਹੀ ਰੱਖਦਾ ਹੈ। ਇਹ ਇੱਕ ਹੋਰ ਇੰਡੈਕਸ ਬੇਨਤੀ ਕਰਕੇ ਮੂਲ ਕਨੈਕਟੀਵਿਟੀ ਸਮੱਸਿਆ ਹੱਲ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਨਹੀਂ ਕਰਦਾ।
ਨਿਰਭਰਤਾ ਉਪਲਬਧ ਹੋਣ ਤੋਂ ਬਾਅਦ ਅਸਲ ਪੈਕੇਜ ਕਾਰਵਾਈ ਲਈ SOCKS ਰਸਤਾ ਚੁਣਿਆ ਜਾ ਸਕਦਾ ਹੈ:
python -m pip install --proxy socks5h://proxy.example.net:1080 package_name
ਪ੍ਰੌਕਸੀ ਪ੍ਰਮਾਣਿਕਤਾ ਤੋਂ ਬਿਨਾਂ ਮਨਜ਼ੂਰਸ਼ੁਦਾ ਜਨਤਕ ਪੈਕੇਜ ਡਾਊਨਲੋਡ ਲਈ, SOCKS5 ਪ੍ਰੌਕਸੀ ਸੂਚੀ ਤੋਂ ਕਿਸੇ ਉਮੀਦਵਾਰ ਨਾਲ ਐਂਡਪੌਇੰਟ ਬਦਲੋ ਅਤੇ ਲੋੜੀਂਦਾ ਪੈਕੇਜ ਚੁਣੋ। socks5h ਸ਼ਬਦ-ਜੋੜ ਪ੍ਰੌਕਸੀ ਰਾਹੀਂ ਮੰਜ਼ਿਲ ਨਾਮ ਦਾ ਰਿਜ਼ੋਲਿਊਸ਼ਨ ਮੰਗਦਾ ਹੈ; socks5 ਇਸ ਕਲਾਇੰਟ ਰਸਤੇ ਵਿੱਚ ਸਥਾਨਕ ਮੰਜ਼ਿਲ ਰਿਜ਼ੋਲਿਊਸ਼ਨ ਚੁਣਦਾ ਹੈ।
ਬੂਟਸਟ੍ਰੈਪ ਇੰਸਟਾਲ ਅਤੇ ਪੈਕੇਜ ਕਾਰਵਾਈ ਨੂੰ ਇੱਕੋ ਇੰਟਰਪ੍ਰਿਟਰ ਅਤੇ ਵਾਤਾਵਰਨ ਉੱਤੇ ਰੱਖੋ। PySocks ਨੂੰ ਕਿਸੇ ਹੋਰ Python ਵਿੱਚ ਇੰਸਟਾਲ ਕਰਨ ਨਾਲ ਟਾਰਗੇਟ pip ਦੇ imports ਨਹੀਂ ਬਦਲਦੇ। ਲਾਭਦਾਇਕ ਜਾਂਚ ਇਹ ਹੈ ਕਿ ਕਿਹੜਾ python -m pip ਕਮਾਂਡ ਕੰਮ ਕਰਦਾ ਹੈ, ਇਹ ਨਹੀਂ ਕਿ ਕੋਈ ਹੋਰ ਟਰਮੀਨਲ ਕਹਿੰਦਾ ਹੈ ਕਿ PySocks ਇੰਸਟਾਲ ਹੈ।