Ага, понял) Обычно привожу все с первого разу нужное) Туплю) Извините.
И так - есть код:
add.py# -*- coding: utf-8 -*-
import os
import os.path
import json
from shutil import copy2
properties = json.load(open("./data/preferences.txt"))
tree = os.walk('./qwer/')
for d,dirs,files in tree:
for f in files:
print (f)
discribe = {
'title': f,
'author': u"Агата Кристи",
'year': 1000,
'pages': 10000,
'kind': u"Детектив",
'note': u"Вне либо-каких серий, типа Марпл или Пуаро."
}
if discribe['title'] and discribe['author'] and discribe['kind']:
id = properties['id']+1
kind = properties['kind']
name_book = f
new_path = './data/books/%d_%s' % (id, name_book)
copy2(os.path.join(d, f), new_path)
base = {'id': id,
'discribe':discribe}
db_file_path = './data/db/%d.txt' % id
json.dump(base, open(db_file_path, "wt"))
if not(discribe['kind'] in kind):
kind.append(discribe['kind'])
properties['kind'] = kind
properties['id'] += 1
json.dump(properties, open('./data/preferences.txt', 'wt'))
raw_input()
есть папки и файлы:


И да забыл написать, сам посмотрел, а написать забыл) Ошибку выбивает когда title пытается записать в файл json.dump
и содержание фалов
preferences
{"kind": ["\u0414\u0435\u0442\u0435\u043a\u0442\u0438\u0432"], "id": 9}
и соответстующий файл 10.txt:
{"id": 10, "discribe": {"kind": "\u0414\u0435\u0442\u0435\u043a\u0442\u0438\u0432", "author": "\u0410\u0433\u0430\u0442\u0430 \u041a\u0440\u0438\u0441\u0442\u0438", "title":
Т.е. доходит до title и вылитает.
Этот скрипт берет все файлы с папки qwer и копирует их в свою папку и при этом создает файл текстовый с характеристиками файла(книги то есть).