Пример #1
0
 def __setup_user_id(self, user_id, user_name):
     if user_name is None:
         self.user_id = user_id
     else:
         self.user_name = user_name
         names_to_ids = get_name_to_id_dict_from_db()
         if user_name in names_to_ids.keys():
             self.user_id = names_to_ids[user_name]
Пример #2
0
    def __init__(self, user_id=None, user_name=None):
        self.user_id = None
        if user_id is not None:
            self.user_id = user_id
        elif user_name is not None:
            user_dict = get_name_to_id_dict_from_db()
            if user_name in user_dict.keys():
                self.user_id = user_dict[user_name]

        self.principle_to_media_holder_dict = dict()
Пример #3
0
def plot_data_for_users(users, plot_params_list, plot_title=None):
    global plot_files_names
    trace_list = list()
    max_x = 0
    single_user = len(users) == 1
    for plot_params in plot_params_list:
        media_getter = plot_params[0]
        graph_type = plot_params[1]
        y_title = media_getter.__name__
        for user1 in users:
            g_title = user1
            xme, yme = media_getter(get_name_to_id_dict_from_db()[user1])
            max_x = max([len(xme), max_x])
            trace = trace_for_plot(graph_type)
            trace['x'] = xme
            trace['y'] = yme
            if single_user:
                g_title = media_getter.__name__
                y_title = user1
            trace['name'] = g_title
            trace_list.append(trace)

    layout = go.Layout(
        title=plot_title,
        xaxis=dict(
            tickmode="auto",
            nticks=int(1.5 * max_x)
        ),
        yaxis=dict(
            tickmode="auto",
            nticks=12,
            title=y_title
        ),
        barmode='group'
    )
    fig = go.Figure(data=trace_list, layout=layout)
    file_name = dir_html + graph_type + '_' + media_getter.__name__ + ".html"
    plot_files_names.append(file_name)
    py.offline.plot(fig, filename=file_name, auto_open=False)
Пример #4
0
def update_all():
    d = get_name_to_id_dict_from_db()
    for name in d.keys():
        updater = DataUpdater(user_name=name, access_token=get_access_token())
        updater.update()
Пример #5
0
def update(user_name=None):
    d = get_name_to_id_dict_from_db()
    if user_name in d.keys():
        updater = DataUpdater(user_id=d[user_name], access_token=get_access_token())
        updater.update()
Пример #6
0
        ),
        yaxis=dict(
            tickmode="auto",
            nticks=12,
            title=y_title
        ),
        barmode='group'
    )
    fig = go.Figure(data=trace_list, layout=layout)
    file_name = dir_html + graph_type + '_' + media_getter.__name__ + ".html"
    plot_files_names.append(file_name)
    py.offline.plot(fig, filename=file_name, auto_open=False)


target_users = sys.argv[1:]
user_dict = get_name_to_id_dict_from_db()

for user in target_users:
    if user not in user_dict.keys():
        raise ValueError("User not found: " + user)

if len(target_users) == 1:
    plot_data_for_users(target_users, [(average_like_by_month, 'scatter'),
                                       (number_of_media_by_month, 'bar')])
    plot_data_for_users(target_users, [(acc_total_like_by_month, 'scatter'),
                                       (acc_number_of_media_by_month, 'bar')])
else:
    plot_data_for_users(target_users, [(average_like_by_month, 'scatter')])
    plot_data_for_users(target_users, [(number_of_media_by_month, 'bar')])
    plot_data_for_users(target_users, [(acc_number_of_media_by_month, 'bar')])
    plot_data_for_users(target_users, [(total_like_by_month, 'bar')])