什么错误是指使用主api密钥连接xively? SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败(_ssl.c:645)

时间:2017-04-27 12:46:37

标签: python xively

我使用下面的代码并从个人xively网站的设置中输入正确的主Api密钥,但结果是“SSL:CERTIFICATE_VERIFY_FAILED”证书验证失败(_ssl.c:645)“。不知道为什么会这样。

  

从导入本地时间,strftime

     

导入时间

     

导入请求

     

导入随机

     

请求的基本URL

     

url ='https://api.xively.com'

     

替换为您的主API密钥和设备的Feed ID

     

MASTER_API_KEY ='***********'

     

feed_ID_1 ='******'

     

feed_ID_2 ='******'

     

feed_ID_3 ='******'

     

使用请求库

更新设备的所有通道的功能      

:param feed_id:设备的Feed ID

     

:参数温度:要更新到通道的温度值

     

:param湿度:要更新到通道的湿度值

     

:param lux:要更新为通道的lux值

     

def update_channels(feed_id,温度,湿度,光照):

     

url_feed = url +'/ v2 / feeds /'+ str(feed_id)+'。json'headers = {'X-ApiKey':   STR(MASTER_API_KEY)}

     

payload ='{\           “版本”:“1.0.0”,\            “datastreams”:[{\             “id”:“湿度”,               “current_value”:'+ str(湿度)+'\             },\             {\             “id”:“光”,             “current_value”:'+ str(light)+'\             },\             {\               “id”:“温度”,             “current_value”:'+ str(温度)+'\             } \           ] \}'\

     

尝试:   r = requests.put(url = url_feed,headers = headers,data = payload)   print(strftime(“%a,%d%b%Y%H:%M:%S”,localtime()))   印刷品(有效载荷)
  print(r.text)
  print(r.status_code)
    除例外为e:
  打印(e)中

     

循环,用于更新具有给定范围的随机值的3个设备

     

正确:
  update_channels(feed_ID_1,random.uniform(20.0,22.0),random.uniform(50.0,51.0),random.uniform(320.0,325.0))   update_channels(feed_ID_2,random.uniform(22.0,24.0),random.uniform(51.0,52.0),random.uniform(325.0,330.0))   update_channels(feed_ID_3,random.uniform(24.0,26.0),random.uniform(52.0,53.0),random.uniform(330.0,335.0))   time.sleep(1)

0 个答案:

没有答案