from sqlalchemy.orm import sessionmaker import db import json import argparse import logging parser = argparse.ArgumentParser(description='Import recipes into database') parser.add_argument('file', type=str, help='JSON file with recipe site information') parser.add_argument('-v', '--verbose', action='store_true') args = parser.parse_args() if args.verbose: logging.basicConfig(level=logging.INFO) logging.getLogger('sqlalchemy.engine').setLevel(logging.INFO) with open(args.file) as f: sites = json.load(f) eng = db.get_engine() S = sessionmaker(eng) with S.begin() as session: for site in sites: logging.info(f"Adding {site}") session.add(db.RecipeSite(**site))