1
0
Fork 0
mirror of https://github.com/morpheus65535/bazarr synced 2025-02-28 16:45:40 +00:00
This commit is contained in:
morpheus65535 2021-09-04 23:32:17 -04:00
parent cdc88e2a3b
commit df60298ffb
2 changed files with 45 additions and 8 deletions

View file

@ -1,8 +1,18 @@
# coding=utf-8
from database import TableShowsRootfolder, TableMoviesRootfolder
def get_series_rootfolder():
pass
rootfolders = TableShowsRootfolder.select().dicts()
def get_movies_rootfolder():
rootfolders = TableMoviesRootfolder.select().dicts()
def check_series_rootfolder():
pass
def check_movies_rootfolder():
pass

View file

@ -1,8 +1,13 @@
from json import dumps
import os
import sys
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '../libs/'))
import os
import re
import logging
import tmdbsimple as tmdb
from database import database
from database import TableShowsRootfolder, TableMoviesRootfolder
tmdb.API_KEY = 'e5577e69d409c601acb98d5bfcee31c7'
@ -11,12 +16,17 @@ def list_series_directories(root_dir):
series_directories = []
try:
root_dir_path = database.execute("SELECT path FROM t_rootdir WHERE id=?", (root_dir,),
only_one=True)['path']
root_dir_path = TableShowsRootfolder.select(TableShowsRootfolder.path)\
.where(TableShowsRootfolder.id == root_dir)\
.dicts()\
.get()
except:
pass
else:
for i, directory_temp in enumerate(os.listdir(root_dir_path)):
if not root_dir_path:
logging.debug(f'BAZARR cannot find the specified series root folder: {root_dir}')
return series_directories
for i, directory_temp in enumerate(os.listdir(root_dir_path['path'])):
directory_original = re.sub(r"\(\b(19|20)\d{2}\b\)", '', directory_temp).rstrip()
directory = re.sub(r"\s\b(19|20)\d{2}\b", '', directory_original).rstrip()
if directory.endswith(', The'):
@ -78,11 +88,11 @@ def get_series_metadata(tmdbid):
series_metadata = {
'title': series_info['original_name'],
'sortTitle': normalize_title(series_info['original_name']),
'year': series_info['first_air_date'][:4],
'year': series_info['first_air_date'][:4] if series_info['first_air_date'] else None,
'tmdbId': tmdbid,
'overview': series_info['overview'],
'poster': images_url.format(series_info['poster_path']),
'fanart': images_url.format(series_info['backdrop_path']),
'poster': images_url.format(series_info['poster_path']) if series_info['poster_path'] else None,
'fanart': images_url.format(series_info['backdrop_path'])if series_info['backdrop_path'] else None,
'alternateTitles': [x['title'] for x in alternative_titles['results']],
'imdbId': external_ids['imdb_id']
}
@ -104,3 +114,20 @@ def normalize_title(title):
title = re.sub(DuplicateSpacesRegex, " ", title)
return title.strip()
def index_all_series():
directories_metadata = []
root_dir_ids = TableShowsRootfolder.select(TableShowsRootfolder.id).dicts()
for root_dir_id in root_dir_ids:
root_dir_subdirectories = list_series_directories(root_dir_id['id'])
for root_dir_subdirectory in root_dir_subdirectories:
root_dir_match = get_series_match(root_dir_subdirectory['directory'])
if root_dir_match:
directories_metadata.append(get_series_metadata(root_dir_match[0]['tmdbId']))
return dumps(directories_metadata)
print(index_all_series())