def search_by_title(self, title_query): # Simple search, could be more complex with fuzzy matching, etc. return {filename: title for filename, title in self.index.items() if title_query.lower() in title}
def scan_and_index(self): for root, dirs, files in os.walk(self.root_dir): for file in files: if file.endswith(".avi"): filename = os.path.join(root, file) # Infer title from filename, for simplicity, let's assume filename without extension is the title title = os.path.splitext(file)[0].lower() self.index[filename] = title
# Example usage indexer = MovieIndexer("/path/to/movies") indexer.scan_and_index()
class SearchQueryParser: def __init__(self, query): self.query = query