Pip安装问题

时间:2018-12-27 12:25:01

标签: python installation pip

两个问题:

第一个是尝试使用python调用JSON API,为此我在代码中使用了“导入请求”。但是出现错误说明:没有名为“ requests”的模块

其次,当我尝试在cmd上安装pip时,出现一个错误,指出-无法获取URL https://pypi.org/simple/pip

我的代码可能是错误的。请帮助解决此问题。

命令提示符下的错误:

  

C:\ Users \ MEIPE \ Desktop> python get-pip.py   收集点     连接被SSLError(SSLCertVerificationError(1,'[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败)断开连接后重试(Retry(total = 4,connect = None,read = None,redirect = None,status = None))验证失败:无法获取本地发行者证书(_ssl.c:1056)'))':/ simple / pip /重试(重试(总计= 3,连接=无,读取=无,重定向=无,状态=无))    通过'SSLError(SSLCertVerificationError(1,'[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败)断开连接后,无法获取本地发行者证书(_ssl.c:1056)'))':/ simple / pip /重试(Retry(total = 2,在连接被'SSLError(SSLCertVerificationError(1,'[SSL:CERTIFICATE_VERIFY_FAILED])证书验证失败后,连接断开后,connect = None,read = None,redirect = None,状态= None))验证失败:无法获取本地发行者证书(_ssl.c :1056)'))':/ simple / pip /通过SSLError(SSLCertVerificationError(1,')断开连接后重试(Retry(total = 1,connect = None,read = None,redirect = None,status = None)) [SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败:无法获取本地发行者证书(_ssl.c:1056)'))':/ simple / pip /重试(Retry(total = 0,connect = None,read = None,redirect =无,状态=无))被“ SSLError(SSLCertVerificationError(1,'[SSL:CERTIFICATE_VERIFY_FAILED]]证书验证失败”的连接断开后,验证失败:无法获取本地颁发者证书(_ss lc:1056)'))':/ simple / pip /无法获取URL https://pypi.org/simple/pip/:确认ssl证书时出现问题:HTTPSConnectionPool(host ='pypi.org',port = 443):最多重试超出网址:/ simple / pip /(由SSLError(SSLCertVerificationError   (1,'[[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败:无法获取本地发行者证书(_ssl.c:1056)')))-跳过找不到满足要求pip的版本(来自版本:)没有匹配的发行版本找到的pip无法获取URL https://pypi.org/simple/pip/:确认ssl证书时出现问题:HTTPSConnectionPool(host ='pypi.org',port = 443):url超出了最大重试次数:/ simple / pip /(导致通过SSLError(SSLCertVerificationError(1,'[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败:无法获取本地发行者证书(_ssl.c:1056)'))-跳过

代码:

import urllib.parse
import requests

main_api = 'http://nagiosdatagateway.vestas.net/esq/ITE1452552/logstash-?'

date = '2018.12.16'
url = main_api + urllib.parse.urlencode({'date':date})

json_date = requests.get(url).json()

print(json_data)

要调用动态更改的JSON API URL并将数据存储在SQL Server表中。这将帮助我安排要每天执行的python脚本,以获取JSON数据,然后从SQL表中获取月度报告。

4 个答案:

答案 0 :(得分:2)

没有名为“ requests”的模块:

这只是意味着您尚未安装软件包“ requests”,可以通过安装pip并运行以下命令来解决该问题(就像您可能从其他问题中发现的那样):

pip install requests

PIP问题:

您从pip收到的错误表明SSL证书不正确。

如果您在使用自己的证书对SSL通信进行重新包装的代理后面,则可能会发生这种情况,那么您需要将该证书添加到请求所使用的证书中(请求使用certifi来知道要信任的证书,而不是操作系统证书)。

您可以通过将环境变量“ REQUESTS_CA_BUNDLE”设置为包含所需代理证书的捆绑软件来实现。

使pip正常工作的另一种方法是通过对每个主机使用标志“ --trusted-host”,告诉pip您信任主机,而不考虑不良证书,从而绕过安全性。

python get-pip.py --trusted-host=pypi.org --trusted-host=...

您可能必须重复此步骤,因为pip在第一个SSL验证错误时失败,因此每次在新的SSL验证错误时都将失败,直到全部添加

答案 1 :(得分:0)

每当我需要安装或更新某些东西时,都必须放置:

pip install --trusted-host=pypi.org --trusted-host=files.pythonhosted.org --user {name of whatever I'm installing}

我在这里找到了此解决方案:https://github.com/pypa/pip/issues/5363

答案 2 :(得分:0)

以下命令可以解决此问题:

python get-pip.py --trusted-host=files.pythonhosted.org --trusted-host=pypi.org

在Windows中以管理员身份运行

答案 3 :(得分:-2)

我下载了2.7

运行以下代码即可。尚未将其插入到SQL表中

  import urllib, json
  import re
  url = "http://nagiosdatagateway.vestas.net/esq/ITE1452552/logstash- 
  2018.12.16/2/desc"
  response = urllib.urlopen(url)
  data = json.loads(response.read())
  print (json.dumps(data,indent = 2))