diff --git a/sort_media.py b/sort_media.py new file mode 100644 index 0000000..89a54fc --- /dev/null +++ b/sort_media.py @@ -0,0 +1,44 @@ +import os +import shutil +from datetime import datetime +from ollama import Ollama + +def get_earliest_time(file_path): + """Get the earliest of creation or last modified time.""" + stat = os.stat(file_path) + return min(stat.st_ctime, stat.st_mtime) + +def sort_media(directory): + """Sort media files into folders by their earliest time.""" + if not os.path.exists(directory): + print(f"Directory {directory} does not exist.") + return + + for filename in os.listdir(directory): + file_path = os.path.join(directory, filename) + if os.path.isfile(file_path): + earliest_time = get_earliest_time(file_path) + date_folder = datetime.fromtimestamp(earliest_time).strftime('%Y-%m-%d') + target_folder = os.path.join(directory, date_folder) + + if not os.path.exists(target_folder): + os.makedirs(target_folder) + + shutil.move(file_path, os.path.join(target_folder, filename)) + +def compare_images_with_ollama(directory): + """Compare images using Ollama.""" + ollama = Ollama(model="ollama3.2:3b") + + for root, _, files in os.walk(directory): + for file in files: + if file.lower().endswith(('.png', '.jpg', '.jpeg')): + file_path = os.path.join(root, file) + # Assuming Ollama has a method to compare images + result = ollama.compare(file_path) + print(f"Comparison result for {file}: {result}") + +if __name__ == "__main__": + directory = input("Enter the directory path to sort and compare media: ") + sort_media(directory) + compare_images_with_ollama(directory)