示例#1
0
    def run(self, get_datasources, add_datasource):
        config = get_config()
        config = config[config['environment']]
        _importers = {}
        for c in config:
            _importers[config[c]['API_NAME']] = config[c]['API_CLASS']
            if get_datasources and config[c]['API_CLASS'] is not None:
                print(config[c]['API_NAME'])

        if get_datasources:
            return

        _p, _c = _importers[add_datasource].rsplit('.', 1)
        _class = getattr(importlib.import_module(_p), _c)
        _object = _class()
        _object._create_datasource()
示例#2
0
apart from converting the data from json to tabular format but using BaseImporter methods

The api doesn't have any credentials and doesn't have any key or token expiry
'''

import os, sys
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))

from importers.base import BaseImporter, Location, get_config
from models.sensor import Sensor
from models import location
from datetime import datetime, timedelta
import json
import pandas as pd

config = get_config()
config = config[config['environment']]['milan']

API_NAME = config['API_NAME']
BASE_URL = config['BASE_URL']
REFRESH_TIME = config['REFRESH_TIME']
API_KEY = config['API_KEY']
TOKEN_EXPIRY = config['TOKEN_EXPIRY']
REFRESH_URL = config['REFRESH_URL']
API_CLASS = config['API_CLASS']


class MilanAPI(BaseImporter):
    def __init__(self):
        super().__init__(API_NAME, BASE_URL, REFRESH_TIME, API_KEY, API_CLASS,
                         TOKEN_EXPIRY)