aboutsummaryrefslogtreecommitdiff
path: root/src/app.py
blob: f13ddf6c9ffecfd7722120038882184b93b537cd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import tkinter
import tkinter.messagebox

import pandas as pd

from helpers.database_handler import DatabaseHandler
from helpers.preprocessor import Preprocessor
from windows.data_fetcher import DataDownloader
from windows.plotviewer import PlotViewer


def fetch_data():
    downloader = DataDownloader()
    downloader.start()
    return downloader.posts

if DatabaseHandler().read().empty:
    posts = fetch_data()
    # ask if user wants to save the data
    response = tkinter.messagebox.askokcancel('Save Data', 'Do you want to save the data for future use?', icon='warning')
    posts = pd.DataFrame(posts)
    posts = Preprocessor(posts).get_preprocessed_data()
    if response:
        DatabaseHandler().write(posts)
else:
    posts = DatabaseHandler().read()

if __name__ == '__main__':
    plot_viewer = PlotViewer(posts)
    plot_viewer.mainloop()