You've already forked Project_Steam_Tracker
Compare commits
12 Commits
3e74ad4b26
...
89a4a680bf
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
89a4a680bf | ||
|
|
052a4804bd | ||
|
|
357daf3b4f | ||
|
|
98ce2706aa | ||
|
|
85e5ee5e57 | ||
|
|
965a15f2a4 | ||
|
|
9f61ce84df | ||
|
|
2b0b2c846f | ||
|
|
ec70c7ee97 | ||
|
|
ebcebbaaaa | ||
|
|
aaf752fbbb | ||
|
|
b20fbe0dc8 |
16
run.py
16
run.py
@@ -32,6 +32,9 @@ with open('steam.json') as file:
|
|||||||
# datalijst omzetten in tuple, dit is de globale variabele die opgeroepen mag worden
|
# datalijst omzetten in tuple, dit is de globale variabele die opgeroepen mag worden
|
||||||
data_tpl = tuple(temp_biglst)
|
data_tpl = tuple(temp_biglst)
|
||||||
|
|
||||||
|
# geheugen/variabelen vrijmaken
|
||||||
|
del blob, temp_biglst, temp_lst, temp_tpl
|
||||||
|
|
||||||
|
|
||||||
@app.route('/')
|
@app.route('/')
|
||||||
def root():
|
def root():
|
||||||
@@ -40,7 +43,7 @@ def root():
|
|||||||
# sorteer op de meest aantal gebruikers
|
# sorteer op de meest aantal gebruikers
|
||||||
data_lst = ss.nest_qsort(data_tpl, 16, True)
|
data_lst = ss.nest_qsort(data_tpl, 16, True)
|
||||||
|
|
||||||
genre = 0
|
genre = stats.popgenre(data_tpl)
|
||||||
|
|
||||||
# limiteer tabel tot en met 15 entries
|
# limiteer tabel tot en met 15 entries
|
||||||
for x in range(0, 15):
|
for x in range(0, 15):
|
||||||
@@ -52,10 +55,9 @@ def root():
|
|||||||
@app.route('/fulltable')
|
@app.route('/fulltable')
|
||||||
def fulltable():
|
def fulltable():
|
||||||
max_rows_per_page = request.args.get('r', 100, int)
|
max_rows_per_page = request.args.get('r', 100, int)
|
||||||
page = request.args.get('p', 1, int)
|
|
||||||
|
|
||||||
if max_rows_per_page == -1:
|
if max_rows_per_page == -1:
|
||||||
max_rows_per_page = 100
|
max_rows_per_page = len(data_tpl)
|
||||||
|
|
||||||
entries = []
|
entries = []
|
||||||
|
|
||||||
@@ -75,7 +77,7 @@ def fulltable():
|
|||||||
else:
|
else:
|
||||||
data_lst = data_tpl # hoezo memory efficient werken?
|
data_lst = data_tpl # hoezo memory efficient werken?
|
||||||
|
|
||||||
for x in range(max_rows_per_page*page-max_rows_per_page, max_rows_per_page*page):
|
for x in range(0, max_rows_per_page):
|
||||||
entries.append(data_lst[x])
|
entries.append(data_lst[x])
|
||||||
|
|
||||||
return render_template('fulltable.html', first_entry=data_tpl[0], entries=entries, reverse=not reverse)
|
return render_template('fulltable.html', first_entry=data_tpl[0], entries=entries, reverse=not reverse)
|
||||||
@@ -86,9 +88,13 @@ def statistics():
|
|||||||
return render_template('statistics.html')
|
return render_template('statistics.html')
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/hardware')
|
||||||
|
def hardware():
|
||||||
|
return render_template('statistics.html')
|
||||||
|
|
||||||
|
|
||||||
@app.route('/search')
|
@app.route('/search')
|
||||||
def search():
|
def search():
|
||||||
tosearch = []
|
|
||||||
query = request.args.get('q')
|
query = request.args.get('q')
|
||||||
|
|
||||||
entries = ss.nest_search(data_tpl, query)
|
entries = ss.nest_search(data_tpl, query)
|
||||||
|
|||||||
BIN
static/img/logo.png
Normal file
BIN
static/img/logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 13 KiB |
BIN
static/img/staem trek.png
Normal file
BIN
static/img/staem trek.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 20 KiB |
BIN
static/img/staem.png
Normal file
BIN
static/img/staem.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
18
stats.py
18
stats.py
@@ -33,7 +33,7 @@ def var(lst):
|
|||||||
|
|
||||||
def std(lst):
|
def std(lst):
|
||||||
""" Retourneer de standaardafwijking (float) van de lijst lst. """
|
""" Retourneer de standaardafwijking (float) van de lijst lst. """
|
||||||
return float(var(lst)**0.5) # wortel trekken van variatie
|
return float(var(lst) ** 0.5) # wortel trekken van variatie
|
||||||
|
|
||||||
|
|
||||||
def freq(lst):
|
def freq(lst):
|
||||||
@@ -69,3 +69,19 @@ def modes(lst):
|
|||||||
r.append(x) # de key opslaan in de resultaten lijst
|
r.append(x) # de key opslaan in de resultaten lijst
|
||||||
|
|
||||||
return sorted(r) # geef de r lijst terug gesorteerd
|
return sorted(r) # geef de r lijst terug gesorteerd
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# stats genereren #
|
||||||
|
########################################
|
||||||
|
|
||||||
|
|
||||||
|
def popgenre(data_tpl):
|
||||||
|
genres = []
|
||||||
|
|
||||||
|
for x in data_tpl: # voor elke "game"
|
||||||
|
lst_genres = x[9].split(';') # genres opsplitten door de semicolons
|
||||||
|
for y in lst_genres: # voor elke genre in game
|
||||||
|
genres.append(y) # toevoegen genre in lijst genres
|
||||||
|
|
||||||
|
return modes(genres)[0] # eerst populairste genre terug geven op basis van gegevens van modes(), wat is de kans
|
||||||
|
# dat er meerdere genres tegelijk populair zijn, toch?
|
||||||
|
|||||||
@@ -33,6 +33,47 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
|
<p>{{ data['data']['short_description'] }}</p>
|
||||||
|
<table class="table table-sm table-dark">
|
||||||
|
<tr>
|
||||||
|
<td>Applicatie ID</td>
|
||||||
|
<td>{{ data['data']['steam_appid'] }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Developers</td>
|
||||||
|
<td>{% for x in data['data']['developers'] %}{{ x }} {% endfor %}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Publishers</td>
|
||||||
|
<td>{% for x in data['data']['publishers'] %}{{ x }} {% endfor %}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Platforms</td>
|
||||||
|
<td><ul>{% for x in data['data']['platforms'] %}
|
||||||
|
<li>
|
||||||
|
{% if x == "windows" and data['data']['platforms'][x] == True %}
|
||||||
|
Windows: Ja
|
||||||
|
{% elif x == "windows" %}
|
||||||
|
Windows: Nee
|
||||||
|
{% endif %}
|
||||||
|
{% if x == "mac" and data['data']['platforms'][x] == True %}
|
||||||
|
Mac: Ja
|
||||||
|
{% elif x == "mac" %}
|
||||||
|
Mac: Nee
|
||||||
|
{% endif %}
|
||||||
|
{% if x == "linux" and data['data']['platforms'][x] == True %}
|
||||||
|
Linux: Ja
|
||||||
|
{% elif x == "linux" %}
|
||||||
|
Linux: Nee
|
||||||
|
{% endif %}
|
||||||
|
</li>
|
||||||
|
{% endfor %}</ul></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Uitgave datum</td>
|
||||||
|
<td>{{ data['data']['release_date']['date'] }}</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
{% for row in entries %}
|
{% for row in entries %}
|
||||||
<tr style="text-align: center;">
|
<tr style="text-align: center;">
|
||||||
<td>{{ row[0] }}</td>
|
<td><a href="/app/{{ row[0] }}">{{ row[0] }}</a></td>
|
||||||
<td>{{ row[1] }}</td>
|
<td>{{ row[1] }}</td>
|
||||||
<td>{{ row[16] }} gebruikers</td>
|
<td>{{ row[16] }} gebruikers</td>
|
||||||
<td>{{ row[2] }}</td>
|
<td>{{ row[2] }}</td>
|
||||||
|
|||||||
30
templates/hardware.html
Normal file
30
templates/hardware.html
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Hardware</title>
|
||||||
|
<link href="{{ url_for('static', filename='css/bootstrap.min.css') }}" rel="stylesheet">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
{% include "t-navbar.html" %}
|
||||||
|
<div class="container">
|
||||||
|
<div class="row row-cols-2">
|
||||||
|
<div class="col">
|
||||||
|
<h1>container</h1>
|
||||||
|
{{ lipsum() }}
|
||||||
|
</div>
|
||||||
|
<div class="col">
|
||||||
|
<h1>container</h1>
|
||||||
|
{{ lipsum() }}
|
||||||
|
</div>
|
||||||
|
<div class="col col-lg">
|
||||||
|
<h1>container</h1>
|
||||||
|
{{ lipsum() }}
|
||||||
|
</div>
|
||||||
|
<div class="col col-lg">
|
||||||
|
<h1>container</h1>
|
||||||
|
{{ lipsum() }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
@@ -14,6 +14,8 @@
|
|||||||
<p>Meest populaire genre is <b>{{ genre }}</b></p>
|
<p>Meest populaire genre is <b>{{ genre }}</b></p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col mt-3">
|
<div class="col mt-3">
|
||||||
|
<!--
|
||||||
|
Dit gaan we voorlopig niet meer gebruiken
|
||||||
<form action="/login" method="post">
|
<form action="/login" method="post">
|
||||||
<div class="form-floating mb-3">
|
<div class="form-floating mb-3">
|
||||||
<input type="text" class="form-control" name="loginACC" placeholder="accountname">
|
<input type="text" class="form-control" name="loginACC" placeholder="accountname">
|
||||||
@@ -28,6 +30,8 @@
|
|||||||
<input type="submit" class="form-control" value="Login">
|
<input type="submit" class="form-control" value="Login">
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
-->
|
||||||
|
<img src="{{ url_for('static', filename='img/staem.png') }}" width="500" height="500"/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col col-lg">
|
<div class="col col-lg">
|
||||||
@@ -46,7 +50,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
{% for row in entries %}
|
{% for row in entries %}
|
||||||
<tr style="text-align: center;">
|
<tr style="text-align: center;">
|
||||||
<td>{{ row[0] }}</td>
|
<td><a href="/app/{{ row[0] }}">{{ row[0] }}</a></td>
|
||||||
<td>{{ row[1] }}</td>
|
<td>{{ row[1] }}</td>
|
||||||
<td>{{ row[16] }}</td>
|
<td>{{ row[16] }}</td>
|
||||||
<td>{{ row[2] }}</td>
|
<td>{{ row[2] }}</td>
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
{% for row in entries %}
|
{% for row in entries %}
|
||||||
<tr style="text-align: center;">
|
<tr style="text-align: center;">
|
||||||
<td>{{ row[0] }}</td>
|
<td><a href="/app/{{ row[0] }}">{{ row[0] }}</a></td>
|
||||||
<td>{{ row[1] }}</td>
|
<td>{{ row[1] }}</td>
|
||||||
<td>{{ row[16] }} gebruikers</td>
|
<td>{{ row[16] }} gebruikers</td>
|
||||||
<td>{{ row[2] }}</td>
|
<td>{{ row[2] }}</td>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>Index</title>
|
<title>Statistics</title>
|
||||||
<link href="{{ url_for('static', filename='css/bootstrap.min.css') }}" rel="stylesheet">
|
<link href="{{ url_for('static', filename='css/bootstrap.min.css') }}" rel="stylesheet">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
@@ -9,19 +9,19 @@
|
|||||||
<div class="row row-cols-2">
|
<div class="row row-cols-2">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<h1>container</h1>
|
<h1>container</h1>
|
||||||
<p>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</p>
|
{{ lipsum() }}
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<h1>container</h1>
|
<h1>container</h1>
|
||||||
<p>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</p>
|
{{ lipsum() }}
|
||||||
</div>
|
</div>
|
||||||
<div class="col col-lg">
|
<div class="col col-lg">
|
||||||
<h1>container</h1>
|
<h1>container</h1>
|
||||||
<p>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</p>
|
{{ lipsum() }}
|
||||||
</div>
|
</div>
|
||||||
<div class="col col-lg">
|
<div class="col col-lg">
|
||||||
<h1>container</h1>
|
<h1>container</h1>
|
||||||
<p>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</p>
|
{{ lipsum() }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -10,6 +10,9 @@
|
|||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="/statistics">Statistieken</a>
|
<a class="nav-link" href="/statistics">Statistieken</a>
|
||||||
</li>
|
</li>
|
||||||
|
<li class="nav-item">
|
||||||
|
<a class="nav-link" href="/hardware">Hardware</a>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<form class="form-inline my-2 my-lg-0" action="/search">
|
<form class="form-inline my-2 my-lg-0" action="/search">
|
||||||
<input class="form-control mr-sm-2" type="search" placeholder="name of the game" name="q">
|
<input class="form-control mr-sm-2" type="search" placeholder="name of the game" name="q">
|
||||||
|
|||||||
Reference in New Issue
Block a user