出错场景
在pycharm终端中下载selenium,使用pip install selenium命令下载,报如下错误:
报错内容
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.
PS C:\Users\86159\PycharmProjects\pytest> pip install selenium
Collecting selenium
Downloading selenium-4.1.3-py3-none-any.whl (968 kB)
|███████████ | 337 kB 6.8 kB/s eta 0:01:33ERROR: Exception:
Traceback (most recent call last):
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\urllib3\response.py", line 438, in _error_catcher
yield
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\urllib3\response.py", line 519, in read
data = self._fp.read(amt) if not fp_closed else b""
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\cachecontrol\filewrapper.py", line 62, in read
data = self.__fp.read(amt)
File "C:\Users\86159\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 447, in read
n = self.readinto(b)
File "C:\Users\86159\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 491, in readinto
n = self.fp.readinto(b)
File "C:\Users\86159\AppData\Local\Programs\Python\Python37\lib\socket.py", line 589, in readinto
return self._sock.recv_into(b)
File "C:\Users\86159\AppData\Local\Programs\Python\Python37\lib\ssl.py", line 1049, in recv_into
return self.read(nbytes, buffer)
File "C:\Users\86159\AppData\Local\Programs\Python\Python37\lib\ssl.py", line 908, in read
return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed outDuring handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\cli\base_command.py", line 180, in _main
status = self.run(options, args)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\cli\req_command.py", line 204, in wrapper
return func(self, options, args)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\commands\install.py", line 319, in run
reqs, check_supported_wheels=not options.target_dir
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\resolution\resolvelib\resolver.py", line 128, in resolve
requirements, max_rounds=try_to_avoid_resolution_too_deep
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\resolvelib\resolvers.py", line 473, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\resolvelib\resolvers.py", line 341, in resolve
name, crit = self._merge_into_criterion(r, parent=None)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\resolvelib\resolvers.py", line 172, in _merge_into_criterion
if not criterion.candidates:
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\resolvelib\structs.py", line 139, in __bool__
return bool(self._sequence)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\resolution\resolvelib\found_candidates.py", line 143, in __bool__
return any(self)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\resolution\resolvelib\found_candidates.py", line 129, in <genexpr>
return (c for c in iterator if id(c) not in self._incompatible_ids)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\resolution\resolvelib\found_candidates.py", line 33, in _iter_built
candidate = func()
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\resolution\resolvelib\factory.py", line 205, in _make_candidate_from_link
version=version,
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\resolution\resolvelib\candidates.py", line 312, in __init__
version=version,
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\resolution\resolvelib\candidates.py", line 151, in __init__
self.dist = self._prepare()
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\resolution\resolvelib\candidates.py", line 234, in _prepare
dist = self._prepare_distribution()
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\resolution\resolvelib\candidates.py", line 318, in _prepare_distribution
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\operations\prepare.py", line 508, in prepare_linked_requirement
return self._prepare_linked_requirement(req, parallel_builds)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\operations\prepare.py", line 552, in _prepare_linked_requirement
self.download_dir, hashes
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\operations\prepare.py", line 243, in unpack_url
hashes=hashes,
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\operations\prepare.py", line 102, in get_http_url
from_path, content_type = download(link, temp_dir.path)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\network\download.py", line 157, in __call__
for chunk in chunks:
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\cli\progress_bars.py", line 152, in iter
for x in it:
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_internal\network\utils.py", line 86, in response_chunks
decode_content=False,
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\urllib3\response.py", line 576, in stream
data = self.read(amt=amt, decode_content=decode_content)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\urllib3\response.py", line 541, in read
raise IncompleteRead(self._fp_bytes_read, self.length_remaining)
File "C:\Users\86159\AppData\Local\Programs\Python\Python37\lib\contextlib.py", line 130, in __exit__
self.gen.throw(type, value, traceback)
File "C:\Users\86159\PycharmProjects\pytest\venv\lib\site-packages\pip\_vendor\urllib3\response.py", line 443, 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.
解决方法
网络的原因,重新尝试即可。
retry之后,成功安装selenium
用pip list查看是否成功安装了selenium