Eu sou muito novo no Python e estou tentando > pip install linkchecker
no Windows 7. Algumas notas:
python
e o pip
não estavam disponíveis na linha de comando até que eu instalasse o 3.4.1.> o linkchecker de busca de pip
funciona. Talvez isso seja porque a pesquisa de pip não verifica o certificado SSL do site's.Aqui estão os conteúdos do meu **pip.log*** após executar o pip install linkchecker
:
Downloading/unpacking linkchecker
Getting page https://pypi.python.org/simple/linkchecker/
Could not fetch URL https://pypi.python.org/simple/linkchecker/: connection error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:598)
Will skip URL https://pypi.python.org/simple/linkchecker/ when looking for download links for linkchecker
Getting page https://pypi.python.org/simple/
Could not fetch URL https://pypi.python.org/simple/: connection error: HTTPSConnectionPool(host='pypi.python.org', port=443): Max retries exceeded with url: /simple/ (Caused by <class 'http.client.CannotSendRequest'>: Request-sent)
Will skip URL https://pypi.python.org/simple/ when looking for download links for linkchecker
Cannot fetch index base URL https://pypi.python.org/simple/
URLs to search for versions for linkchecker:
* https://pypi.python.org/simple/linkchecker/
Getting page https://pypi.python.org/simple/linkchecker/
Could not fetch URL https://pypi.python.org/simple/linkchecker/: connection error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:598)
Will skip URL https://pypi.python.org/simple/linkchecker/ when looking for download links for linkchecker
Could not find any downloads that satisfy the requirement linkchecker
Cleaning up...
Removing temporary dir C:\Users\jcook\AppData\Local\Temp\pip_build_jcook...
No distributions at all found for linkchecker
Exception information:
Traceback (most recent call last):
File "C:\Python34\lib\site-packages\pip\basecommand.py", line 122, in main
status = self.run(options, args)
File "C:\Python34\lib\site-packages\pip\commands\install.py", line 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "C:\Python34\lib\site-packages\pip\req.py", line 1177, in prepare_files
url = finder.find_requirement(req_to_install, upgrade=self.upgrade)
File "C:\Python34\lib\site-packages\pip\index.py", line 277, in find_requirement
raise DistributionNotFound('No distributions at all found for %s' % req)
pip.exceptions.DistributionNotFound: No distributions at all found for linkchecker
Você pode especificar um cert com este param:
pip --cert /etc/ssl/certs/FOO_Root_CA.pem install linkchecker
Veja: Docs » Guia de Referência » pip
Se especificar a sua empresa's cert raiz não't funcionar talvez a cURL funcione: http://curl.haxx.se/ca/cacert.pem
Você deve usar um arquivo PEM e não um arquivo CRT. Se você tem um arquivo CRT você precisará converter o arquivo para PEM Há relatórios nos comentários de que isso agora funciona com um arquivo CRT, mas eu não verifiquei.
Verifique também: SSL Cert Verification.
Você pode tentar contornar o erro SSL usando http em vez de https. Claro que isto não é não é óptimo em termos de segurança, mas se estiveres com pressa, deve ser suficiente:
pip install --index-url=http://pypi.python.org/simple/ linkchecker
Eu resolvi este problema removendo meu pip e instalando a versão mais antiga do pip: https://pypi.python.org/pypi/pip/1.2.1