Allow to resume upload
This commit is contained in:
parent
414e269587
commit
cd414aeabc
1 changed files with 24 additions and 5 deletions
|
@ -1,4 +1,5 @@
|
|||
import hashlib
|
||||
import json
|
||||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
@ -29,18 +30,36 @@ if __name__ == '__main__':
|
|||
database = mongo.exif_database
|
||||
collection = database.pictures
|
||||
|
||||
pictures_metadata = []
|
||||
metadata_pictures = []
|
||||
|
||||
# Load saved pictures cache
|
||||
try:
|
||||
with open('exif-database.json', 'r') as f:
|
||||
saved_pictures = json.load(f)
|
||||
except FileNotFoundError:
|
||||
saved_pictures = {}
|
||||
|
||||
for file in Path(sys.argv[1]).rglob("*.ARW"):
|
||||
filename = os.fsdecode(file)
|
||||
print(filename)
|
||||
|
||||
if filename in saved_pictures:
|
||||
print(f'Skipping {filename}')
|
||||
continue
|
||||
|
||||
print(f'Uploading {filename}')
|
||||
|
||||
picture_metadata = _execute_exiftool(filename)
|
||||
pictures_metadata.append(picture_metadata)
|
||||
metadata_pictures.append(picture_metadata)
|
||||
|
||||
# Append MongoDB identifier
|
||||
picture_metadata['_id'] = hashlib.sha1(filename.lower().encode('utf-8')).hexdigest()
|
||||
picture_metadata['path'] = sys.argv[1]
|
||||
picture_metadata['path'] = filename
|
||||
|
||||
saved_pictures[picture_metadata['path']] = True
|
||||
|
||||
# Insert into MongoDB
|
||||
collection.insert_many(pictures_metadata)
|
||||
collection.insert_many(metadata_pictures)
|
||||
|
||||
# Save saved pictures cache
|
||||
with open('exif-database.json', 'w') as f:
|
||||
json.dump(saved_pictures, f)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue