A Python content management system designed for kirsle.net featuring a blog, comments and photo albums. https://rophako.kirsle.net/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
911 B

#!/usr/bin/env python
from __future__ import unicode_literals
"""Locate any orphaned photos.
Usage: scripts/orphaned-photos.py <path/to/db> <path/to/static/photos>"""
import sys
import os
import codecs
import json
import glob
import rophako.jsondb as JsonDB
def main():
if len(sys.argv) == 1:
print "Usage: {} <path/to/static/photos>".format(__file__)
photo_root = sys.argv[1]
db = JsonDB.get("photos/index")
photos = set()
for album in db["albums"]:
for key, data in db["albums"][album].iteritems():
for img in ["large", "thumb", "avatar"]:
# Get all the images and compare.
for img in glob.glob("{}/*.*".format(photo_root)):
fname = img.split("/")[-1]
if not fname in photos:
print "Orphan:", fname
if __name__ == "__main__":