adding metadata to all
This commit is contained in:
parent
c7e37c1b6d
commit
d7ebcd7b32
@ -57,11 +57,10 @@ shared_lst = []
|
|||||||
server_lst = []
|
server_lst = []
|
||||||
|
|
||||||
def find_things(server, media_type):
|
def find_things(server, media_type):
|
||||||
dict_tt = {}
|
dict_tt = {name: [] for name in media_type}
|
||||||
print('Finding items from {}.'.format(server.friendlyName))
|
print('Finding items from {}.'.format(server.friendlyName))
|
||||||
for section in server.library.sections():
|
for section in server.library.sections():
|
||||||
if section.title not in IGNORE_LST and section.type in media_type:
|
if section.title not in IGNORE_LST and section.type in media_type:
|
||||||
dict_tt[section.type] = []
|
|
||||||
for item in server.library.section(section.title).all():
|
for item in server.library.section(section.title).all():
|
||||||
dict_tt[section.type].append(server.fetchItem(item.ratingKey))
|
dict_tt[section.type].append(server.fetchItem(item.ratingKey))
|
||||||
|
|
||||||
@ -90,33 +89,46 @@ def get_meta(main, friend, item, media_type):
|
|||||||
|
|
||||||
def org_diff(main, friend, key):
|
def org_diff(main, friend, key):
|
||||||
diff_dict = {}
|
diff_dict = {}
|
||||||
meta_lst = []
|
|
||||||
mtitles = main.keys()
|
mtitles = main.keys()
|
||||||
ftitles = friend.keys()
|
ftitles = friend.keys()
|
||||||
shared = set(mtitles + ftitles)
|
|
||||||
print('... combining {}s'.format(key))
|
print('... combining {}s'.format(key))
|
||||||
|
comb_set = set(mtitles + ftitles)
|
||||||
mine = list(set(mtitles) - set(ftitles))
|
comb_lst = list(comb_set)
|
||||||
missing = list(set(ftitles) - set(mtitles))
|
meta_lst = []
|
||||||
combined = list(set(ftitles + mtitles))
|
for item in comb_lst:
|
||||||
|
|
||||||
for item in combined:
|
|
||||||
meta_lst.append(get_meta(main, friend, item, key))
|
meta_lst.append(get_meta(main, friend, item, key))
|
||||||
|
|
||||||
diff_dict['{}_combined'.format(key)] = {'list': meta_lst,
|
diff_dict['{}_combined'.format(key)] = {'list': meta_lst,
|
||||||
'total': len(combined)}
|
'total': len(comb_lst)}
|
||||||
|
|
||||||
print('... comparing {}s'.format(key))
|
print('... comparing {}s'.format(key))
|
||||||
|
|
||||||
print('... finding what is mine')
|
print('... finding what is mine')
|
||||||
diff_dict['{}_mine'.format(key)] = {'list': mine,
|
mine = list(set(mtitles) - set(ftitles))
|
||||||
|
meta_lst = []
|
||||||
|
for item in mine:
|
||||||
|
meta_lst.append(get_meta(main, friend, item, key))
|
||||||
|
diff_dict['{}_mine'.format(key)] = {'list': meta_lst,
|
||||||
'total': len(mine)}
|
'total': len(mine)}
|
||||||
|
|
||||||
print('... finding what is missing')
|
print('... finding what is missing')
|
||||||
diff_dict['{}_missing'.format(key)] = {'list': missing,
|
missing = list(set(ftitles) - set(mtitles))
|
||||||
|
meta_lst = []
|
||||||
|
for item in missing:
|
||||||
|
meta_lst.append(get_meta(main, friend, item, key))
|
||||||
|
diff_dict['{}_missing'.format(key)] = {'list': meta_lst,
|
||||||
'total': len(missing)}
|
'total': len(missing)}
|
||||||
|
|
||||||
print('... finding what is shared')
|
print('... finding what is shared')
|
||||||
ddiff = set(mine + missing)
|
main_set = set(mtitles)
|
||||||
shared_lst = list(shared.union(ddiff) - shared.intersection(ddiff))
|
friend_set = set(ftitles)
|
||||||
diff_dict['{}_shared'.format(key)] = {'list': shared_lst,
|
shared_lst = list(main_set.intersection(friend_set))
|
||||||
|
meta_lst = []
|
||||||
|
for item in shared_lst:
|
||||||
|
print(item)
|
||||||
|
meta_lst.append(get_meta(main, friend, item, key))
|
||||||
|
diff_dict['{}_shared'.format(key)] = {'list': meta_lst,
|
||||||
'total': len(shared_lst)}
|
'total': len(shared_lst)}
|
||||||
|
|
||||||
return diff_dict
|
return diff_dict
|
||||||
@ -130,8 +142,6 @@ def diff_things(main_dict, friend_dict):
|
|||||||
diff_dict[key] = org_diff(main_titles, friend_titles, key)
|
diff_dict[key] = org_diff(main_titles, friend_titles, key)
|
||||||
# todo-me guid double check?
|
# todo-me guid double check?
|
||||||
|
|
||||||
# todo-me check back to obj in main/friend for rating and bitrate weights
|
|
||||||
|
|
||||||
return diff_dict
|
return diff_dict
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user