in vizseq/_data/data_sources.py [0:0]
def __init__(self, path: str):
assert os.path.exists(path) and path.endswith(ZIP_EXT)
self.path = path
self.data = None
with zipfile.ZipFile(path) as zip_f:
name_list = zip_f.namelist()
if len(name_list) == 1:
self._data_type = VizSeqDataType.text
assert name_list[0].endswith(TXT_EXT)
with zip_f.open(name_list[0]) as f:
self.data = [l.decode('utf-8').strip() for l in f]
else:
metadata_txt_name = None
for name in name_list:
if name.endswith(TXT_EXT):
# only one txt file for metadata
assert metadata_txt_name is None
metadata_txt_name = name
with zip_f.open(metadata_txt_name) as f:
self.data = [l.decode('utf-8').strip() for l in f]
self._data_type = get_file_type_from_list(self.data)
assert all(fn in name_list for fn in self.data)