在python 3中是否可以使用ubidots?

时间:2018-04-05 03:58:14

标签: python raspberry-pi iot

我尝试使用覆盆子的ubidots,但我需要使用asyncio lib,但是当我尝试运行我的代码时,在python 3支持这一点,在导入ubidots lib时给我一个错误。这就是为什么我的问题。

我想知道是否有办法将ubidots导入Python 3.我知道我可以在覆盆子中使用ubidots,问题是我不能在同一代码中使用这两个库,因为ubidots在python 2.7中运行和asyncio在3中,所以我想知道在python 3中是否有某种方法可以使用ubidots。

我的代码是:

#import las librerias
import serial
import time
import asyncio

from ubidots import ApiClient

#verificaci
print("Inicio del programa")

#subir el token
api = ApiClient(token ='A1E-ZJIXh7Gfi6vixFUAxtZXioRG0j2Lp6')

print("Token ok")

#subir las key de las variables

voltage1 = api.get_variable('5a8497d4c03f9726abf2c977') 


print("Variables OK")

#update with port for Arduino
ser = serial.Serial('/dev/ttyACM0', 9600)

print("Arduino OK")

async def ciclo():
   while True:

      ser.flushInput() #Reset buffer
      read_serial = ser.readline()

      voltage1Reading = float(read_serial) #convert to float
      new_value = voltage1.save_value({'value': voltage1Reading})
      print(read_serial)
      await asyncio.sleep(0.0111)




    time.sleep(10)

Error

它给我的错误

1 个答案:

答案 0 :(得分:0)

是的,Ubidots库可以毫无问题地使用Python 3和asyncio。

您得到的错误是因为您没有在Python 3软件包中安装ubidots软件包,而是在Python 2软件包中安装。因此,要在您的设备中成功使用Ubidots包,您应该执行以下命令:pip3 install ubidots