-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathimport.py
40 lines (32 loc) · 1.1 KB
/
import.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
import os
import sys
import yaml
import logging
from optparse import OptionParser, Option
import targets
parser = OptionParser()
parser.add_option("-s", "--source", dest="sources", default='digitally_imported',
action="append", help="radio station sources.")
parser.add_option("-t", "--target", dest="targets",
action="append", help="where to import stations.")
parser.add_option("-q", "--quiet",
action="store_false", dest="verbose", default=True,
help="don't print status messages to stdout")
if __name__ == '__main__':
(options, args) = parser.parse_args()
logging.basicConfig(
level=logging.INFO if options.verbose else logging.ERROR,
format='%(message)s')
logging.info(yaml.dump(vars(options)))
# import radio stations
from sources import digitally_imported
stations = digitally_imported.get_stations()
# for every target
for target in options.targets:
# import backend
target_module = getattr(targets, target)
export_object = target_module.Export()
# iterate stations
for key, radio in stations.iteritems():
export_object.add(radio['genre'], radio['uri'])
export_object.finish()