最近在学习基于python的数据分析,会使用pandas模块,但是在使用pip安装pandas的时候,老是碰到以以下错误
C:\Users\fr>pip install pandas
Collecting pandas
Downloading pandas-1.1.0-cp37-cp37m-win_amd64.whl (9.4 MB)
|█████████████ | 3.8 MB 11 kB/s eta 0:08:24ERROR: Exception:
Traceback (most recent call last):
File "d:\tools\python\python37\lib\site-packages\pip\_vendor\urllib3\response.py", line 425, in _error_catcher
yield
File "d:\tools\python\python37\lib\site-packages\pip\_vendor\urllib3\response.py", line 507, in read
data = self._fp.read(amt) if not fp_closed else b""
File "d:\tools\python\python37\lib\site-packages\pip\_vendor\cachecontrol\filewrapper.py", line 62, in read
data = self.__fp.read(amt)
File "d:\tools\python\python37\lib\http\client.py", line 457, in read
n = self.readinto(b)
File "d:\tools\python\python37\lib\http\client.py", line 501, in readinto
n = self.fp.readinto(b)
File "d:\tools\python\python37\lib\socket.py", line 589, in readinto
return self._sock.recv_into(b)
File "d:\tools\python\python37\lib\ssl.py", line 1071, in recv_into
return self.read(nbytes, buffer)
File "d:\tools\python\python37\lib\ssl.py", line 929, in read
return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "d:\tools\python\python37\lib\site-packages\pip\_internal\cli\base_command.py", line 188, in _main
status = self.run(options, args)
File "d:\tools\python\python37\lib\site-packages\pip\_internal\cli\req_command.py", line 185, in wrapper
return func(self, options, args)
File "d:\tools\python\python37\lib\site-packages\pip\_internal\commands\install.py", line 333, in run
reqs, check_supported_wheels=not options.target_dir
File "d:\tools\python\python37\lib\site-packages\pip\_internal\resolution\legacy\resolver.py", line 179, in resolve
discovered_reqs.extend(self._resolve_one(requirement_set, req))
File "d:\tools\python\python37\lib\site-packages\pip\_internal\resolution\legacy\resolver.py", line 362, in _resolve_one
abstract_dist = self._get_abstract_dist_for(req_to_install)
File "d:\tools\python\python37\lib\site-packages\pip\_internal\resolution\legacy\resolver.py", line 314, in _get_abstract_dist_for
abstract_dist = self.preparer.prepare_linked_requirement(req)
File "d:\tools\python\python37\lib\site-packages\pip\_internal\operations\prepare.py", line 469, in prepare_linked_requirement
hashes=hashes,
File "d:\tools\python\python37\lib\site-packages\pip\_internal\operations\prepare.py", line 259, in unpack_url
hashes=hashes,
File "d:\tools\python\python37\lib\site-packages\pip\_internal\operations\prepare.py", line 130, in get_http_url
link, downloader, temp_dir.path, hashes
File "d:\tools\python\python37\lib\site-packages\pip\_internal\operations\prepare.py", line 281, in _download_http_url
for chunk in download.chunks:
File "d:\tools\python\python37\lib\site-packages\pip\_internal\cli\progress_bars.py", line 166, in iter
for x in it:
File "d:\tools\python\python37\lib\site-packages\pip\_internal\network\utils.py", line 39, in response_chunks
decode_content=False,
File "d:\tools\python\python37\lib\site-packages\pip\_vendor\urllib3\response.py", line 564, in stream
data = self.read(amt=amt, decode_content=decode_content)
File "d:\tools\python\python37\lib\site-packages\pip\_vendor\urllib3\response.py", line 529, in read
raise IncompleteRead(self._fp_bytes_read, self.length_remaining)
File "d:\tools\python\python37\lib\contextlib.py", line 130, in __exit__
self.gen.throw(type, value, traceback)
File "d:\tools\python\python37\lib\site-packages\pip\_vendor\urllib3\response.py", line 430, in _error_catcher
raise ReadTimeoutError(self._pool, None, "Read timed out.")
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.
以上的错误发生,其实是由于超时引起的。其问题的根源在于网络,当然网络的问题可能不是能解决了的。那该怎么做呢,其实解决的方案也比较简单就是我们在使用pip下载资源包的时候,通过指定超时的限定,这里我设置–default-timeout=1000,也就是延长超时时间来解决。具体操作如下:
C:\Users\fr>pip --default-timeout=1000 install -U pandas
Collecting pandas
Downloading pandas-1.1.0-cp37-cp37m-win_amd64.whl (9.4 MB)
|████████████████████████████████| 9.4 MB 10.0 kB/s
Collecting pytz>=2017.2
Downloading pytz-2020.1-py2.py3-none-any.whl (510 kB)
|████████████████████████████████| 510 kB 11 kB/s
Collecting numpy>=1.15.4
Downloading numpy-1.19.1-cp37-cp37m-win_amd64.whl (12.9 MB)
|████████████████████████████████| 12.9 MB 16 kB/s
Collecting python-dateutil>=2.7.3
Downloading python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
|████████████████████████████████| 227 kB 12 kB/s
Requirement already satisfied, skipping upgrade: six>=1.5 in d:\tools\python\python37\lib\site-packages (from python-dateutil>=2.7.3->pandas) (1.14.0)
Installing collected packages: pytz, numpy, python-dateutil, pandas
Successfully installed numpy-1.19.1 pandas-1.1.0 python-dateutil-2.8.1 pytz-2020.1
希望,我的一点点经验能够帮助到你!!