コード例 #1
0
ファイル: swarm.py プロジェクト: huberf/OneSelf
import json
from os import path
sys.path.append(path.dirname(path.dirname(path.abspath(__file__))))
from utils import loadConfig
import utils
import generator
try:
    HAS_SENTIMENT = True
    from utils import sentiment
except ImportError:
    HAS_SENTIMENT = False

config = loadConfig.getConfig()

try:
    json_data = utils.load_record_json('swarm-checkins.json')
except:
    print('Make sure you\'ve synced or exported your Swarm data')
    sys.exit()

year_count = {}
zipcode_count = {}
places_count = {}
categories_count = {}
state_count = {}

#print(json_data['checkins']['items'][0])

mayorships = []
shout_sentiments = []
# Main processing loop
コード例 #2
0
ファイル: lastfm.py プロジェクト: sdhanushram96/OneSelf
import sys
import datetime
import json
from os import path
sys.path.append(path.dirname(path.dirname(path.abspath(__file__))))
from utils import loadConfig
import utils
import generator

ENUMERATE = False

config = loadConfig.getConfig()

try:
    json_data = utils.load_record_json('lastfm-data.json')
except:
    print('Make sure you\'ve synced or exported your Nomie data')
    sys.exit()

songs_recorded = len(json_data['data'])
print("Songs recorded: {0}".format(songs_recorded))

# Now generate HTML report
parts = [['header', ['Last.fm Report']],
         ['big_num', ['Songs recorded', songs_recorded]]]
generator.build_report('lastfm_main', parts)
コード例 #3
0
# This script is intended to intelligently monitor your nutrition data
import sys
import datetime
import json
from os import path
sys.path.append(path.dirname(path.dirname(path.abspath(__file__))))
from utils import loadConfig
import utils
import generator

config = loadConfig.getConfig()

try:
    json_data = utils.load_record_json('wakatime-export.json')
except:
    print('Make sure you\'ve synced or exported your WakaTime')
    sys.exit()


def calc_top_languages(days):
    language_hours = {}
    for i in days:
        for lang in i['languages']:
            try:
                language_hours[lang['name']] += lang['total_seconds']
            except:
                language_hours[lang['name']] = lang['total_seconds']
    sorted_list = sorted(language_hours.items(), key=lambda kv: kv[1])
    sorted_list.reverse()
    return sorted_list
コード例 #4
0
ファイル: strava.py プロジェクト: sdhanushram96/OneSelf
import datetime
import json
from os import path
import numpy as np
sys.path.append(path.dirname(path.dirname(path.abspath(__file__))))
from utils import loadConfig
import utils
import generator

config = loadConfig.getConfig()

CONFIDENCE_LEVEL = 1.96  # 95% confidence

# Load data
try:
    json_data = utils.load_record_json('strava-data.json')
except:
    print('Make sure you\'ve synced or exported your Strava data')
    sys.exit()

print(json_data['activities'][0].keys())

# TODO: Make difficulty metric based on things like heart rate and the nature of
# the elevation changes
lifetime_distance = 0
avg_hrs = []
# Main processing loop over all activities
for i in json_data['activities']:
    try:
        avg_hr = sum(i['heartrate']) / len(i['heartrate'])
        avg_hrs += [avg_hr]
コード例 #5
0
ファイル: nomie_query.py プロジェクト: huberf/OneSelf
import sys
import datetime
import json
from os import path
sys.path.append( path.dirname( path.dirname( path.abspath(__file__) ) ) )
from utils import loadConfig
import utils
import generator

ENUMERATE = False

config = loadConfig.getConfig()

try:
    json_data = utils.load_record_json('nomie-backup.nomie.json')
except:
    print('Make sure you\'ve synced or exported your Nomie data')
    sys.exit()

trackers = json_data['trackers'] # Main keys: charge, config->uom, label, math (mean, etc.)

TRACKER_ID_TO_NAME = {}
for i in trackers:
    TRACKER_ID_TO_NAME[i['_id']] = i['label']

raw_events = json_data['events']

def tracker_id_to_name(id):
    try:
        return TRACKER_ID_TO_NAME[id]
    except:
コード例 #6
0
import utils
import generator

config = loadConfig.getConfig()

html_parts = []


def add_message(text):
    global html_parts
    print(text)
    html_parts += [['paragraph', [text]]]


try:
    json_data = utils.load_record_json('myfitnesspal-food.json')
except IOError as e:
    print('Make sure you\'ve synced MyFitnessPal nutrition data')
    sys.exit()

BASELINE_METRICS = {
    'calories': 2200,
    'carbohydrates': 300,
    'fat': 65,
    'protein': 56,
    'sodium': 2400,
    'sugar': 50
}


def remove_untracked_days(days):
コード例 #7
0
from utils import loadConfig
import utils
import generator

config = loadConfig.getConfig()

def check_aggregates_directory():
    directory = 'aggregates/'
    if not os.path.exists(directory):
        os.makedirs(directory)

check_aggregates_directory()

print('Last.fm...')
try:
    song_data = utils.load_record_json('lastfm-data.json')
    song_days = {}
    for i in song_data['data']:
        timestamp = i['date']['uts']
        date = datetime.datetime.utcfromtimestamp(float(timestamp))
        date = date.replace(hour=0, minute=0, second=0, microsecond=0)
        day_timestamp = date.timestamp()
        try:
            song_days[day_timestamp] += [i]
        except:
            song_days[day_timestamp] = [i]
    day_blocks = []
    for i in song_days.keys():
        block = {
                'timestamp': i,
                'songCount': 0