scripts/migrate_shorturls.py
author terom
Mon, 17 Mar 2008 23:39:03 +0000
changeset 31 09776792a91c
parent 26 81d6679d50d0
permissions -rw-r--r--
skip folders that result in exceptions, forgotten style.css
from lib import shorturl, db

sdb = shorturl.DB()

def gen () :
    count = 0

    for key in sdb.db.keys() :
        if key.startswith("_") :
            continue
        
        print "%6s" % key,

        value = sdb.db[key]

        if not isinstance(value, tuple) or len(value) != 3 :
            print "CORRUPT VALUE!!!"
            continue

        type, dirpath, fname = value

        id = shorturl.key2int(key)
        dirpath = dirpath.lstrip('.').lstrip('/')

        if type == "img" :
            print "img"
            continue    # already imported images

            print "img %6d %50s %10s" % (id, dirpath, fname)

            yield id, dirpath, fname

        else :

            print "dir %6d %50s" % (id, dirpath)

            yield id, dirpath, ''

        count += 1

        if count % 500 == 0 :
            print count


print "Starting import..."

c = db.insert_many("""
    INSERT OR IGNORE INTO nodes VALUES (?, ?, ?)
""", gen())

print "Done!"

print "%d rows affected" % c