pip installation module uses domestic image source to accelerate installation

Keywords: Linux pip Python socket SSL

Today, when installing the Python module matplotlib, the installation is not successful. The prompt "socket.timeout: The read operation timed out" or "Read timed out" is always displayed

Because of the high latency of domestic network access to foreign countries, the installation of the module is very slow, and it must not be installed.

 1 [root@localhosts ~]# pip3 install --user matplotlib
 2 WARNING: Running pip install with root privileges is generally not a good idea. Try `pip3 install --user` instead.
 3 Collecting matplotlib
 4   Downloading https://files.pythonhosted.org/packages/57/4f/dd381ecf6c6ab9bcdaa8ea912e866dedc6e696756156d8ecc087e20817e2/matplotlib-3.1.1-cp36-cp36m-manylinux1_x86_64.whl (13.1MB)
 5     38% |████████████▍                   | 5.1MB 11kB/s eta 0:12:11Exception:
 6 Traceback (most recent call last):
 7   File "/usr/lib/python3.6/site-packages/pip/_vendor/urllib3/response.py", line 302, in _error_catcher
 8     yield
 9   File "/usr/lib/python3.6/site-packages/pip/_vendor/urllib3/response.py", line 384, in read
10     data = self._fp.read(amt)
11   File "/usr/lib/python3.6/site-packages/pip/_vendor/cachecontrol/filewrapper.py", line 60, in read
12     data = self.__fp.read(amt)
13   File "/usr/lib64/python3.6/http/client.py", line 459, in read
14     n = self.readinto(b)
15   File "/usr/lib64/python3.6/http/client.py", line 503, in readinto
16     n = self.fp.readinto(b)
17   File "/usr/lib64/python3.6/socket.py", line 586, in readinto
18     return self._sock.recv_into(b)
19   File "/usr/lib64/python3.6/ssl.py", line 968, in recv_into
20     return self.read(nbytes, buffer)
21   File "/usr/lib64/python3.6/ssl.py", line 830, in read
22     return self._sslobj.read(len, buffer)
23   File "/usr/lib64/python3.6/ssl.py", line 587, in read
24     v = self._sslobj.read(len, buffer)
25 socket.timeout: The read operation timed out

 

In this case, you can use the domestic image source acceleration to install

You can add the - i parameter after the pip to specify the installation source. Here, i use the alicloud installation source

 1 [root@localhosts ~]# pip3 install --user matplotlib -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com 3   Downloading http://mirrors.aliyun.com/pypi/packages/57/4f/dd381ecf6c6ab9bcdaa8ea912e866dedc6e696756156d8ecc087e20817e2/matplotlib-3.1.1-cp36-cp36m-manylinux1_x86_64.whl (13.1MB)
 4     100% |████████████████████████████████| 13.1MB 12.5MB/s 
 5 Collecting pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 (from matplotlib)
 6   Downloading http://mirrors.aliyun.com/pypi/packages/a3/c4/7828cf9e71ce8fbd43c1e502f3fdd0498f069fcf9d1c268205ce278ae201/pyparsing-2.4.4-py2.py3-none-any.whl (67kB)
 7     100% |████████████████████████████████| 71kB 15.9MB/s 
 8 Collecting cycler>=0.10 (from matplotlib)
 9   Downloading http://mirrors.aliyun.com/pypi/packages/f7/d2/e07d3ebb2bd7af696440ce7e754c59dd546ffe1bbe732c8ab68b9c834e61/cycler-0.10.0-py2.py3-none-any.whl
10 Collecting numpy>=1.11 (from matplotlib)
11   Downloading http://mirrors.aliyun.com/pypi/packages/0e/46/ae6773894f7eacf53308086287897ec568eac9768918d913d5b9d366c5db/numpy-1.17.3-cp36-cp36m-manylinux1_x86_64.whl (20.0MB)
12     100% |████████████████████████████████| 20.0MB 12.1MB/s 
13 Collecting kiwisolver>=1.0.1 (from matplotlib)
14   Downloading http://mirrors.aliyun.com/pypi/packages/f8/a1/5742b56282449b1c0968197f63eae486eca2c35dcd334bab75ad524e0de1/kiwisolver-1.1.0-cp36-cp36m-manylinux1_x86_64.whl (90kB)
15     100% |████████████████████████████████| 92kB 15.7MB/s 
16 Collecting python-dateutil>=2.1 (from matplotlib)
17   Downloading http://mirrors.aliyun.com/pypi/packages/d4/70/d60450c3dd48ef87586924207ae8907090de0b306af2bce5d134d78615cb/python_dateutil-2.8.1-py2.py3-none-any.whl (227kB)
18     100% |████████████████████████████████| 235kB 12.5MB/s 
19 Requirement already satisfied: six in ./.local/lib/python3.6/site-packages (from cycler>=0.10->matplotlib)
20 Requirement already satisfied: setuptools in /usr/lib/python3.6/site-packages (from kiwisolver>=1.0.1->matplotlib)
21 Installing collected packages: pyparsing, cycler, numpy, kiwisolver, python-dateutil, matplotlib
22 Successfully installed cycler-0.10.0 kiwisolver-1.1.0 matplotlib-3.1.1 numpy-1.17.3 pyparsing-2.4.4 python-dateutil-2.8.1

Posted by keveen on Wed, 06 Nov 2019 15:10:13 -0800