Crude implementation of CHIRP csv bookmarks import
This commit is contained in:
parent
774b71f8f0
commit
0b0fbd76a7
30
tools/bookmark_integrator
Executable file
30
tools/bookmark_integrator
Executable file
@ -0,0 +1,30 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import json
|
||||
import csv
|
||||
import sys
|
||||
from pprint import pprint
|
||||
|
||||
|
||||
with open("../bookmarks.json") as f:
|
||||
bookmarks = json.load(f)
|
||||
|
||||
modulation_map = {"FM": "nfm", "NFM": "nfm"}
|
||||
|
||||
in_file = sys.argv[1]
|
||||
to_integrate = []
|
||||
with open(in_file) as f:
|
||||
reader = csv.DictReader(f)
|
||||
for row in reader:
|
||||
channel = {
|
||||
"name": row["Name"],
|
||||
"frequency": int(float(row["Frequency"]) * 1000000),
|
||||
"modulation": modulation_map[row["Mode"]],
|
||||
}
|
||||
to_integrate.append(channel)
|
||||
|
||||
bookmarks.extend(to_integrate)
|
||||
deduplicated = [dict(t) for t in {tuple(d.items()) for d in bookmarks}]
|
||||
|
||||
with open("../bookmarks.json", "w") as f:
|
||||
json.dump(deduplicated, f)
|
Loading…
Reference in New Issue
Block a user