mirror of
https://gitlab.com/wgp/dougal/software.git
synced 2025-12-06 10:37:07 +00:00
Add system data import module
This commit is contained in:
47
bin/system_imports.py
Executable file
47
bin/system_imports.py
Executable file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/python3
|
||||
|
||||
"""
|
||||
Re-import Dougal-exported data created by
|
||||
system_exports.py
|
||||
"""
|
||||
|
||||
import os
|
||||
from glob import glob
|
||||
import configuration
|
||||
import preplots
|
||||
from datastore import Datastore
|
||||
|
||||
exportables = [
|
||||
"events_seq",
|
||||
"events_seq_labels",
|
||||
"events_timed",
|
||||
"events_timed_labels"
|
||||
]
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
print("Reading configuration")
|
||||
surveys = configuration.surveys()
|
||||
|
||||
print("Connecting to database")
|
||||
db = Datastore()
|
||||
|
||||
print("Reading surveys")
|
||||
for survey in surveys:
|
||||
print(f'Survey: {survey["id"]} ({survey["schema"]})')
|
||||
db.set_survey(survey["schema"])
|
||||
with db.conn.cursor() as cursor:
|
||||
|
||||
try:
|
||||
pathPrefix = survey["exports"]["path"]
|
||||
except ValueError:
|
||||
print("Survey does not define an export path")
|
||||
continue
|
||||
|
||||
for table in exportables:
|
||||
path = os.path.join(pathPrefix, table)
|
||||
print(" ← ", path, " → ", table)
|
||||
with open(path, "rb") as fd:
|
||||
cursor.copy_from(fd, table);
|
||||
|
||||
print("Done")
|
||||
Reference in New Issue
Block a user