예제 #1
0
#!/usr/bin/python
# -*- coding: utf-8 -*-
from argparse import ArgumentParser
from lib.smugmug import API, SmugmugException
from lib.logging_utils import setup_logging
from lib.decorators import memoize
from ConfigParser import ConfigParser
from os import path, makedirs
from jinja2 import Template
import codecs
import locale
import logging
import shutil
import sys

setup_logging('generate_static.log')

# Wrap sys.stdout into a StreamWriter to allow writing unicode.
sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout) 

def album_matches(album_spec, album_info):
    chunks = album_spec.split('/')
    key = None
    if len(chunks) == 1: 
        key = [album_info['Title']]
    elif len(chunks) == 2: 
        key = [album_info['Category']['Name'], album_info['Title']] 
    elif len(chunks) == 3: 
        key = [album_info['Category']['Name'],
               album_info.get('SubCategory', {'Name': ''})['Name'],
               album_info['Title']] 
예제 #2
0
파일: import.py 프로젝트: jongman/picsync
# -*- coding: utf-8 -*-
from argparse import ArgumentParser
from collections import defaultdict
from os import path, makedirs
from lib.index import Index
from lib.config import should_index
from lib.fs_utils import (unicode_walk, md5, stat, get_date, flat_walk, move, copy)
from lib.image_utils import autorotate
from lib.logging_utils import setup_logging
import logging
import codecs
import re
import locale
import sys

setup_logging('import.log')

# Wrap sys.stdout into a StreamWriter to allow writing unicode.
sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout) 

def get_parser():
    parser = ArgumentParser()
    parser.add_argument('from_dir', help='Directory to import from.')
    parser.add_argument('to_dir', help='Import to. Should have pictures.db.')
    parser.add_argument('--dry-run', help="Don't do anything",
                        default=False, action='store_true')
    parser.add_argument('--move', help='Move, do not copy',
                        default=False, action='store_true')
    parser.add_argument('--directory-for-date',
                        help='Use directory name instead of detecting dates.',
                        default=False, action='store_true')
예제 #3
0
파일: upload.py 프로젝트: jongman/picsync
# -*- coding: utf-8 -*-
from argparse import ArgumentParser
from lib.index import Index
from lib.smugmug import API, SmugmugException
from lib.logging_utils import setup_logging
from lib.decorators import memoize
from lib.fs_utils import read_exif
from ConfigParser import ConfigParser
from os import path
import logging
import codecs
import locale
import sys
import re

setup_logging('upload.log')

# Wrap sys.stdout into a StreamWriter to allow writing unicode.
sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout) 


def is_ascii(path):
    return all(ord(ch) < 128 for ch in path)

def get_parser():
    parser = ArgumentParser()
    parser.add_argument('archive_dir', help='Home directory.')
    parser.add_argument('--config', help='Path to config file.', default='config.ini')
    parser.add_argument('--skip-unicode-filenames', default=False,
                        action='store_true')
    parser.add_argument('--move', default=False, action='store_true',