aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAdam Janovsky2020-11-11 17:43:41 +0100
committerAdam Janovsky2020-11-11 17:46:37 +0100
commit0501ad8ecb1822247ccad9d1e6ccf232f22efc92 (patch)
tree8a5df1d0518c53aa41e0add7893a00a9c23e9a0c
parentca211d1ad0782097ff6b983d374bab1ac05760f8 (diff)
downloadsec-certs-0501ad8ecb1822247ccad9d1e6ccf232f22efc92.tar.gz
sec-certs-0501ad8ecb1822247ccad9d1e6ccf232f22efc92.tar.zst
sec-certs-0501ad8ecb1822247ccad9d1e6ccf232f22efc92.zip
added oop demo script
-rw-r--r--oop_demo.py28
-rw-r--r--sec_certs/dataset.py1
2 files changed, 29 insertions, 0 deletions
diff --git a/oop_demo.py b/oop_demo.py
new file mode 100644
index 00000000..2d76a6c4
--- /dev/null
+++ b/oop_demo.py
@@ -0,0 +1,28 @@
+from sec_certs.dataset import CCDataset, DatasetJSONEncoder
+from pathlib import Path
+from datetime import datetime
+import logging
+import json
+
+
+def main():
+ logging.basicConfig(level=logging.INFO)
+ start = datetime.now()
+
+ # Create empty dataset
+ dset = CCDataset({}, Path('./debug_dataset'), 'sample_dataset', 'sample dataset description')
+
+ # Load metadata for certificates from CSV and HTML sources
+ dset.get_certs_from_web()
+ logging.info(f'Finished parsing. Have dataset with {len(dset)} certificates.')
+
+ # Dump dataset into JSON
+ with open('./debug_dataset/cc_full_dataset.json', 'w') as handle:
+ json.dump(dset, handle, cls=DatasetJSONEncoder, indent=4)
+
+ end = datetime.now()
+ logging.info(f'The computation took {(end-start)} seconds.')
+
+
+if __name__ == '__main__':
+ main()
diff --git a/sec_certs/dataset.py b/sec_certs/dataset.py
index c430929b..ad26d7b1 100644
--- a/sec_certs/dataset.py
+++ b/sec_certs/dataset.py
@@ -133,6 +133,7 @@ class CCDataset(Dataset):
"""
self.web_dir.mkdir(parents=True, exist_ok=True)
+ logging.info('Downloading required csv and html files.')
html_items = [(x, self.web_dir / y) for y, x in self.html_products.items()]
csv_items = [(x, self.web_dir / y) for y, x in self.csv_products.items()]
helpers.download_parallel(html_items, num_threads=8)