-
Notifications
You must be signed in to change notification settings - Fork 0
/
weeklyify.py
56 lines (46 loc) · 1.45 KB
/
weeklyify.py
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import csv
import os
import yaml
weeklies = {}
songs = []
for weekly in os.listdir("_data"):
if weekly[-3:] != 'csv':
continue
with open("_data/{}".format(weekly), 'r') as f:
r = csv.DictReader(f)
for row in r:
n = row['Name'].strip()
if n not in weeklies:
weeklies[n] = []
weeklies[n].append(row['Artist - Song Title'])
if 'Link' in row:
songs.append((row['Artist - Song Title'], row['Link']))
elif 'Link just in case' in row:
songs.append(
(row['Artist - Song Title'], row['Link just in case']))
with open('_data/weeklyify.yml', 'w') as f:
f.write(yaml.safe_dump(weeklies))
with open('songs.txt', 'w') as f:
for song in songs:
f.write('{}: {}\n'.format(song[0], song[1]))
## NEEEERRRRRRRDS
wow = []
for dorks in os.listdir('_data'):
with open('_data/{}'.format(dorks)) as f:
reader = csv.DictReader(f)
for row in reader:
what = row.get('Where to find it', row.get(
'Why you dig it (HTML and Markdown okay)'))
if what is not None and what not in wow:
wow.append(what)
with open('dorks.txt', 'w') as f:
f.write('\n'.join(wow))
header = """---
layout: page
title: "Things we've called Spotify"
---
"""
with open('dorks.md', 'w') as f:
f.write(header)
for what in wow:
f.write('* {}\n'.format(what))