mirror of
https://github.com/krateng/maloja.git
synced 2025-04-16 16:52:18 +03:00
Added new scrobble generation for testing
This commit is contained in:
parent
504bfb405e
commit
817d98e467
@ -1194,24 +1194,3 @@ def scrobbles_in_range(start,end,reverse=False):
|
||||
if stamp < start: continue
|
||||
if stamp > end: return
|
||||
yield SCROBBLESDICT[stamp]
|
||||
|
||||
|
||||
# for performance testing
|
||||
def generateStuff(num=0,pertrack=0,mult=0):
|
||||
import random
|
||||
for _ in range(num):
|
||||
track = random.choice(TRACKS)
|
||||
t = get_track_dict(track)
|
||||
time = random.randint(STAMPS[0],STAMPS[-1])
|
||||
createScrobble(t["artists"],t["title"],time,volatile=True)
|
||||
|
||||
for track in TRACKS:
|
||||
t = get_track_dict(track)
|
||||
for _ in range(pertrack):
|
||||
time = random.randint(STAMPS[0],STAMPS[-1])
|
||||
createScrobble(t["artists"],t["title"],time,volatile=True)
|
||||
|
||||
for scrobble in SCROBBLES:
|
||||
s = get_scrobble_dict(scrobble)
|
||||
for i in range(mult):
|
||||
createScrobble(s["artists"],s["title"],s["time"] - i*500,volatile=True)
|
||||
|
@ -71,7 +71,6 @@ def direct():
|
||||
from .. import server
|
||||
|
||||
|
||||
|
||||
@mainfunction({"l":"level"},shield=True)
|
||||
def main(action,*args,**kwargs):
|
||||
actions = {
|
||||
@ -84,7 +83,8 @@ def main(action,*args,**kwargs):
|
||||
"import":tasks.loadlastfm,
|
||||
"backup":tasks.backuphere,
|
||||
# "update":update,
|
||||
"fix":tasks.fixdb
|
||||
"fix":tasks.fixdb,
|
||||
"generate":tasks.generate_scrobbles
|
||||
}
|
||||
if action in actions: actions[action](*args,**kwargs)
|
||||
else: print("Valid commands: " + " ".join(a for a in actions))
|
||||
|
@ -34,3 +34,9 @@ def update():
|
||||
def fixdb():
|
||||
from .fixexisting import fix
|
||||
fix()
|
||||
|
||||
def generate_scrobbles():
|
||||
targetfile = data_dir['scrobbles']("randomgenerated.tsv")
|
||||
|
||||
from .generate import generate
|
||||
generate(targetfile)
|
||||
|
67
maloja/proccontrol/tasks/generate.py
Normal file
67
maloja/proccontrol/tasks/generate.py
Normal file
@ -0,0 +1,67 @@
|
||||
import random
|
||||
import datetime
|
||||
|
||||
artists = [
|
||||
"Chou Tzuyu","Jennie Kim","Kim Seolhyun","Nancy McDonie","Park Junghwa","Hirai Momo","Rosé Park","Laura Brehm","HyunA",
|
||||
"Jeremy Soule","Jerry Goldsmith","Howard Shore","Tilman Sillescu","James Newton Howard","Bear McCreary","David Newman",
|
||||
"Approaching Nirvana","7 Minutes Dead","Tut Tut Child","Mr FijiWiji","Tut Tut Child"
|
||||
]
|
||||
|
||||
adjectives = [
|
||||
"Black","Pink","Yellow","Scarlet","Purple","Burgundy","Orange","Golden","Green","Vermilion",
|
||||
"Misty","Foggy","Cloudy","Hazy","Cold","Hot","Warm","Dark","Bright",
|
||||
"Long","Short","Last","First","Final","Huge","Tiny","Important"
|
||||
]
|
||||
nouns = [
|
||||
"Ship","Princess","Castle","Monastery","Sword","War","Battle","Temple","Army",
|
||||
"Valley","River","Waterfall","Mountain","Tree","Forest","Sea","Desert","Montains","Clouds","Glacier",
|
||||
"Penguin","Tiger","Phoenix","Qilin","Dragon","Tortoise","Bird","Toucan"
|
||||
]
|
||||
prepositions = ["in","of","over","under","about","across","inside","toward","on","within","with"]
|
||||
verbs = ["Lifting","Stealing","Dancing","Running","Jumping","Singing"]
|
||||
|
||||
patterns = [
|
||||
"{n1} {p1} the {a1} {n2}",
|
||||
"The {a1} {n1}",
|
||||
"{p1} the {a1} {n1}",
|
||||
"{a1} {n1} {p1} the {a2} {n2}",
|
||||
"{v1} the {a1} {n1}",
|
||||
"{v1} {p1} the {a1} {n1}",
|
||||
"{v1} and {v2}",
|
||||
"{a1} {n1} {p1} the {n2} {n3}",
|
||||
"{a1} {n1} and the {n2} {n3}"
|
||||
]
|
||||
|
||||
def generate_track():
|
||||
|
||||
title = random.choice(patterns).format(
|
||||
n1=random.choice(nouns),
|
||||
n2=random.choice(nouns),
|
||||
n3=random.choice(nouns),
|
||||
a1=random.choice(adjectives),
|
||||
a2=random.choice(adjectives),
|
||||
p1=random.choice(prepositions),
|
||||
p2=random.choice(prepositions),
|
||||
v1=random.choice(verbs),
|
||||
v2=random.choice(verbs)
|
||||
)
|
||||
title = "".join([title[0].upper(),title[1:]])
|
||||
trackartists = [random.choice(artists) for _ in range(random.randint(1, 3))]
|
||||
|
||||
return {
|
||||
"artists":trackartists,
|
||||
"title":title
|
||||
}
|
||||
|
||||
|
||||
|
||||
def generate(targetfile):
|
||||
with open(targetfile,"a") as fd:
|
||||
for _ in range(200):
|
||||
track = generate_track()
|
||||
for _ in range(random.randint(1, 50)):
|
||||
timestamp = random.randint(1, int(datetime.datetime.now().timestamp()))
|
||||
|
||||
entry = "\t".join([str(timestamp),"␟".join(track['artists']),track['title'],"-"])
|
||||
fd.write(entry)
|
||||
fd.write("\n")
|
Loading…
x
Reference in New Issue
Block a user