Пример #1
0
    def error(self, message):
        if self.row and self.row.get("bearer"):
            retry = (settings.get_url() + "sheet?state=" + self.guid +
                     "&createsheet=1")
        else:
            retry = settings.get_url() + "sheet"

        if not isinstance(message, str):
            message = json.dumps(message)
        error_url = "error.html?error={}&retry={}".format(
            urllib.parse.quote(message), urllib.parse.quote(retry))
        self.start_response('302 Found', [('Location', error_url)])
        return []
Пример #2
0
def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    d = parse_qs(env["QUERY_STRING"])
    if "get_config" in d:
        guid = guidhelper.new_guid()
        return [json.dumps({
            "new_guid": guidhelper.new_guid(),
            "client_id": settings.get_client_id(),
            "oauth_url": settings.get_oauth_url(),
            "url": settings.get_url(),
            "dev_url": settings.get_dev_url(),
            "sandbox_url": settings.get_sandbox_url(),
            "prod_url": settings.get_prod_url(),
        }).encode()]
    if "guid" not in d:
        return error("Parameter guid required")
    guid = d["guid"][0]
    if not guidhelper.validate_uuid4(guid):
        return error("Parameter guid must be a valid guid")
    code = d["code"][0] if "code" in d else ""
    row = db.get_row(guid)
    if not row:
        row = db.new_row(guid)
    if code and not row["code"]:
        row["code"] = code
        db.put_row(row)
    if not row.get("bearer"):
        if not code:
            return error("Parameter code required for guid without bearer")
        url = settings.get_token_url() + "v1/token"
        response = requests.post(url, params={
            "grant_type": "authorization_code",
            "code": code,
            "redirect_uri": settings.get_url(),
            "client_id": settings.get_client_id(),
            "client_secret": settings.get_client_secret()
        }).json()
        if "error" in response:
            return [json.dumps(response).encode()]
        if "access_token" not in response:
            return [json.dumps({"error": "No access_token returned", 
                                "raw_reply": response}).encode()]
        row["bearer"] = response["access_token"]
        db.put_row(row)
        print("Creating thread...")
        t = threading.Thread(target=prefetch_session, args=(row,))
        print("Starting thread...")
        t.start()
        print("Thread running.")
    return [json.dumps({"success": "success"}).encode()]
Пример #3
0
def main():
    numOfSamples = 3

    tempSamples = []
    tempFinal = []

    for i in range(numOfSamples):
        tempSamples.append(getTemps())
        tempFinal.append(0.0)

    for tempSample in tempSamples:
        tempSampleCount = 0
        for temp in tempSample:
            tempFinal[tempSampleCount] = tempFinal[tempSampleCount] + temp
            tempSampleCount = tempSampleCount + 1

    tempSampleCount = 0
    for temp in tempFinal:
        tempFinal[tempSampleCount] = tempFinal[tempSampleCount] / numOfSamples
        tempSampleCount = tempSampleCount + 1

    tempFinalText = json.dumps(tempFinal)
    print(tempFinalText)
    url = settings.get_url()
    res = requests.post('http://' + url + '/smomo/setdata', json=tempFinalText)
    if res.ok:
        print(res.json())
def get_api_data(firm_id, for_firm=True):
    level = 'firm' if for_firm else 'lawyers'
    url = settings.get_url(firm_id, for_firm)
    api_data = fetching_results_from_api(url)

    if api_data:
        save_json_to_file(f"data/{level}_{firm_id}.csv", api_data)
Пример #5
0
    def __init__(self, web_driver):

        global driver
        global page_url
        page_url = settings.get_url() + "sign-in"
        super(SignIn, self).__init__(web_driver, url=page_url)
        driver = BasePage._driver
Пример #6
0
 def request_bunq_oauth(self):
     url = (settings.get_oauth_url() + 'auth?' + 'response_type=code&' +
            'client_id=' + settings.get_client_id() + '&' +
            'redirect_uri=' + settings.get_url() + 'sheet&' + 'state=' +
            guidhelper.new_guid())
     self.start_response('302 Found', [('Location', url)])
     return []
Пример #7
0
    def create_sheet(self, code):
        url = self.get_url()
        flow = self.get_flow()
        flow.fetch_token(authorization_response=url)
        credentials = flow.credentials
        service = discovery.build('sheets', 'v4', credentials=credentials)
        spreadsheet = {'properties': {'title': "Easylist"}}
        spreadsheet = service.spreadsheets().create(
            body=spreadsheet, fields='spreadsheetId,spreadsheetUrl').execute()
        spreadsheet_id = spreadsheet.get("spreadsheetId")

        csv_url = settings.get_url() + "generate?guid=" + self.guid
        body = {"values": [['=importdata("' + csv_url + '")']]}
        request = service.spreadsheets().values().update(
            spreadsheetId=spreadsheet_id,
            range="A1",
            valueInputOption="USER_ENTERED",
            body=body)
        response = request.execute()

        body = {
            "requests": [{
                "repeatCell": {
                    "range": {
                        "sheetId": 0,
                        "startColumnIndex": 2,
                        "endColumnIndex": 3
                    },
                    "cell": {
                        "userEnteredFormat": {
                            "numberFormat": {
                                "type": "DATE"
                            }
                        }
                    },
                    "fields": "userEnteredFormat.numberFormat"
                }
            }]
        }
        request = service.spreadsheets().batchUpdate(
            spreadsheetId=spreadsheet_id, body=body)
        response = request.execute()

        sheet_url = spreadsheet.get("spreadsheetUrl")
        self.start_response('302 Found', [('Location', sheet_url)])
        return []
Пример #8
0
 def create_bunq_installation(self, code):
     url = settings.get_token_url() + "v1/token"
     response = requests.post(url,
                              params={
                                  "grant_type": "authorization_code",
                                  "code": code,
                                  "redirect_uri":
                                  settings.get_url() + "sheet",
                                  "client_id": settings.get_client_id(),
                                  "client_secret":
                                  settings.get_client_secret()
                              }).json()
     if "error" in response:
         return self.error(response)
     if "access_token" not in response:
         return self.error({
             "error": "No access_token returned",
             "raw_reply": response
         })
     self.row = db.new_row(self.guid)
     self.row["bearer"] = response["access_token"]
     db.put_row(self.row)
     return self.request_google_oauth()
Пример #9
0
import thread
import time
import requests
import json
import settings
import logging

logging.basicConfig(filename='TiltLog.log',
                    level=logging.INFO,
                    format='%(asctime)s %(levelname)s - %(message)s',
                    datefmt='%m/%d/%Y %I:%M:%S %p')

while True:

    logging.info('TiltLog Start')
    logging.info('URL: %s', settings.get_url())
    logging.info('Loop Timeout: %s', settings.get_looptimeout())
    logging.info('Debug: %s', settings.get_debug())

    try:
        tiltHydrometer = TiltHydrometer.TiltHydrometerManager(True, 60, 40)
        tiltHydrometer.loadSettings()
        tiltHydrometer.start()

        debug = settings.get_debug()

        while True:
            time.sleep(settings.get_looptimeout())

            valuesToSend = []
Пример #10
0
    def __init__(self, web_driver):
        global driver
        self.page_url = settings.get_url() + '#welcome/create-test-wizard/http'

        super(Welcome, self).__init__(web_driver, url=self.page_url)
        driver = BasePage._driver
Пример #11
0
 def __init__(self, web_driver):
     global driver
     global page_url
     self.page_url = settings.get_url()
     super(AppMain, self).__init__(web_driver, url=self.page_url)
     driver = BasePage._driver
Пример #12
0
import thread
import time
import requests
import json
import settings

tiltHydrometer = TiltHydrometer.TiltHydrometerManager(True, 60, 40)
tiltHydrometer.loadSettings()
tiltHydrometer.start()
time.sleep(10)

valuesToSend = []

value = tiltHydrometer.getValue('Black')

tiltHydrometer.stop()

print 'Temperature'
print value.temperature
print 'Gravity'
print value.gravity

valuesToSend = [value.temperature, value.gravity]

valuesToSendText = json.dumps(valuesToSend)

url = settings.get_url()
res = requests.post('http://' + url + '/tilt/setdata', json=valuesToSendText)
if res.ok:
    print(res.json())
Пример #13
0
 def get_flow(self):
     flow = google_auth_oauthlib.flow.Flow.from_client_config(
         settings.get_app_credentials(),
         ['https://www.googleapis.com/auth/drive.file'])
     flow.redirect_uri = settings.get_url() + "sheet"
     return flow