pip install <package> on hostel, college, or office Wi-Fi ends in
SSL: CERTIFICATE_VERIFY_FAILED, ProxyError, Connection to pypi.org timed out,
or hangs at "Collecting…" and dies. The same command works fine on mobile hotspot.
Very common for Indian students and freshers: campus networks and corporate laptops
route traffic through a proxy or a firewall that intercepts HTTPS. The network is
rewriting or blocking your connection to PyPI (the package index pip downloads from).
Linked module: 0.1. Related: the same network breaks git clone and dataset downloads
in later modules, so this diagnosis pays off repeatedly.
Separate "my machine is broken" from "my network is interfering" first — that is the whole diagnosis. Test: run the same install on a mobile hotspot. If it succeeds, your Python setup is healthy and the network is the problem; stop reinstalling things. Identify which interference you have: a proxy (your college/IT gives you a proxy URL), TLS interception (the SSL certificate error — the network presents its own certificate), or plain blocking/throttling of pypi.org (timeouts). Corporate laptops often also have a custom root certificate installed by IT that pip does not know about.
Match the fix to the cause. Proxy: tell pip about it —
pip install --proxy http://user:pass@proxyhost:port <package> or set the
HTTP_PROXY/HTTPS_PROXY environment variables the way your institute documents.
TLS interception on a corporate laptop: get the organisation's root certificate from
IT and point pip at it (pip config set global.cert path/to/ca.pem) — this is the
sanctioned route, not a workaround. Timeout/blocked index: use a mirror you trust,
e.g. pip install -i https://pypi.org/simple <package> with a longer --timeout, or
do heavy installs over hotspot and keep the campus network for browsing. Do NOT adopt
the internet's favourite bad advice — --trusted-host everywhere or disabling SSL
verification permanently. It silences the error by removing the security check, and it
will follow you into professional work as a habit that fails audits.
Keep a personal "network notes" file: your campus proxy URL, whether hotspot works, which fixes you needed. Install big packages in one sitting on a good connection and rely on pip's cache afterwards. On a corporate machine, ask IT for the proxy + root certificate on day one — teams expect the question. Never commit proxy credentials into scripts or dotfiles you might push to GitHub.
Q: "Your install fails on office Wi-Fi with an SSL error. What do you do?" Strong answer: isolate machine vs network with the hotspot test, name the three interference types (proxy, TLS interception, blocking), give the sanctioned fixes, and explicitly reject disabling SSL verification — interviewers use this question to filter out copy-paste-from-forums habits.