larry1chan@qq.com 8 сар өмнө
commit
3d0de185c2

+ 4 - 0
.gitignore

@@ -0,0 +1,4 @@
+venv
+anime
+docker/cache
+docker/config

+ 78 - 0
README.md

@@ -0,0 +1,78 @@
+# Ghibli Anime Jellyfin Preparation Toolkit
+
+This project provides a set of Python scripts to process a collection of Japanese animation (anime) files, originally named in Chinese, and transform them into a directory and file structure suitable for [Jellyfin](https://jellyfin.org/) media server. The toolkit also supports fetching and organizing metadata from online movie databases such as IMDb and TMDB.
+
+## Features
+
+- **Directory Traversal & Title Extraction:**Collects unique Chinese anime titles from a directory tree.
+- **English Title & Metadata Matching:**Matches Chinese titles to their English equivalents and fetches metadata (IMDb/TMDB IDs).
+- **Metadata Transformation:**Converts collected metadata into a Jellyfin-friendly JSON format.
+- **Directory & File Structure Generation:**Builds a new directory tree with properly named files, supporting symlinks, renaming, and dry-run modes.
+- **Jellyfin Integration:**
+  Prepares your anime collection for easy import into Jellyfin, with correct naming and metadata.
+
+## Main Scripts
+
+- [`ghibili3.py`](ghibili3.py):Traverses your anime directory, matches Chinese titles to English, and fetches metadata from IMDb/TMDB. Outputs results to `ghibli_imdb_results.json`.
+- [`transform_files.py`](transform_files.py):Transforms the metadata and file information into a Jellyfin-ready format, outputting `ghibli_jellyfin_ready.json`.
+- [`build_jellyfin_dir.py`](build_jellyfin_dir.py):Builds the target directory structure for Jellyfin using the transformed JSON. Supports options for dry-run, symlinking, renaming files/directories, and more.
+- [`sync_media.py`](sync_media.py):Synchronizes media files between directories, with support for dry-run and error logging.
+- Other utility scripts:
+
+  - [`delete_media.py`](delete_media.py), [`discard_media.py`](discard_media.py), [`remove_symlinks.py`](remove_symlinks.py): Various helpers for cleaning and managing your media files.
+
+## Usage Example
+
+1. **Collect and Match Titles:**
+
+   ```sh
+   python ghibili3.py ./anime --tmdb <TMDB_API_KEY>
+   ```
+
+   This generates `ghibli_imdb_results.json`.
+2. **Transform Metadata for Jellyfin:**
+
+   ```sh
+   python transform_files.py
+   ```
+
+   This generates `ghibli_jellyfin_ready.json`.
+3. **Build Jellyfin Directory Structure:**
+
+   ```sh
+   python build_jellyfin_dir.py ghibli_jellyfin_ready.json ./jellyfin_anime --symlink --rename-dir --dry-run
+   ```
+
+   Remove `--dry-run` to actually create files and directories.
+
+## Requirements
+
+- Python 3.7+
+- `requests` library (for metadata fetching)
+
+Install dependencies:
+
+```sh
+pip install requests
+```
+
+## Directory Structure
+
+- `anime/` — Original anime files, named in Chinese.
+- `ghibli_imdb_results.json` — Metadata results from IMDb/TMDB.
+- `ghibli_jellyfin_ready.json` — Jellyfin-ready metadata and file info.
+- `jellyfin_anime/` — Output directory for Jellyfin import (created by scripts).
+
+## Notes
+
+- The scripts are designed for batch processing and assume a consistent directory structure.
+- Always use `--dry-run` first to preview changes before making modifications.
+- For best results, ensure your anime files are organized in per-title directories.
+
+## License
+
+MIT License
+
+---
+
+*This toolkit is not affiliated with Studio Ghibli or Jellyfin.*

+ 304 - 0
build_jellyfin_dir.py

@@ -0,0 +1,304 @@
+import os
+import json
+import argparse
+import shutil
+
+def build_tree_from_json(json_path, target_dir, dry_run=False, use_symlink=False, rename_source=False, rename_dir=False):
+    with open(json_path, "r", encoding="utf-8") as f:
+        data = json.load(f)
+
+    actions = []
+    dir_rename_actions = []
+
+    for section in ["matched", "unmatched"]:
+        for entry in data.get(section, []):
+            # Directory rename logic
+            if rename_dir:
+                original_dir = entry.get("path")
+                # Use the first suggested file to get the new directory name
+                jellyfin_files = entry.get("jellyfin_media_files", [])
+                if jellyfin_files:
+                    suggested_path = jellyfin_files[0]["suggested"]
+                    suggested_dir = os.path.dirname(suggested_path)
+                    if original_dir and suggested_dir and original_dir != suggested_dir:
+                        dir_rename_actions.append((original_dir, suggested_dir))
+            # File actions
+            for file_info in entry.get("jellyfin_media_files", []):
+                suggested_path = file_info["suggested"]
+                original_path = file_info.get("original", suggested_path)
+                filename = os.path.basename(suggested_path)
+                subdir_name = os.path.splitext(filename)[0]
+                subdir_path = os.path.join(target_dir, subdir_name)
+                file_path = os.path.join(subdir_path, filename)
+                actions.append((subdir_path, file_path, original_path, suggested_path))
+
+    if dry_run:
+        print(f"Dry run: The following directory tree would be created under {target_dir}:")
+        tree = {}
+        for subdir, file_path, original_path, suggested_path in actions:
+            rel_subdir = os.path.relpath(subdir, target_dir)
+            tree.setdefault(rel_subdir, []).append(os.path.basename(file_path))
+        for subdir, files in tree.items():
+            print(f"{os.path.join(target_dir, subdir)}/")
+            for f in files:
+                print(f"    {f}")
+        if rename_source:
+            print("\nDry run: The following source files would be renamed:")
+            for _, _, original_path, suggested_path in actions:
+                if original_path != suggested_path:
+                    bak_path = original_path + ".bak"
+                    print(f"    Would create 0-byte: {bak_path}")
+                    print(f"    Would rename: {original_path} -> {suggested_path}")
+        if rename_dir:
+            print("\nDry run: The following directories would be renamed:")
+            for original_dir, suggested_dir in dir_rename_actions:
+                print(f"    Would rename directory: {original_dir} -> {suggested_dir}")
+    else:
+        # Directory renaming
+        if rename_dir:
+            for original_dir, suggested_dir in dir_rename_actions:
+                if os.path.exists(original_dir) and not os.path.exists(suggested_dir):
+                    try:
+                        os.makedirs(os.path.dirname(suggested_dir), exist_ok=True)
+                        os.rename(original_dir, suggested_dir)
+                        print(f"Renamed directory: {original_dir} -> {suggested_dir}")
+                    except Exception as e:
+                        print(f"Failed to rename directory {original_dir}: {e}")
+        # File actions
+        for subdir, file_path, original_path, suggested_path in actions:
+            os.makedirs(subdir, exist_ok=True)
+            if rename_source:
+                bak_path = original_path + ".bak"
+                if not os.path.exists(bak_path):
+                    with open(bak_path, "wb"):
+                        pass
+                if original_path != suggested_path and os.path.exists(original_path):
+                    try:
+                        os.rename(original_path, suggested_path)
+                        print(f"Renamed: {original_path} -> {suggested_path}")
+                    except Exception as e:
+                        print(f"Failed to rename {original_path}: {e}")
+            elif use_symlink:
+                if not os.path.exists(file_path):
+                    try:
+                        os.symlink(original_path, file_path)
+                        print(f"Symlinked: {file_path} -> {original_path}")
+                    except Exception as e:
+                        print(f"Failed to symlink {file_path}: {e}")
+            else:
+                if not os.path.exists(file_path):
+                    with open(file_path, "wb"):
+                        pass
+        print(f"Created {len(actions)} files in {target_dir} (symlink={use_symlink}, rename_source={rename_source}, rename_dir={rename_dir})")
+
+if __name__ == "__main__":
+    parser = argparse.ArgumentParser(description="Build a Jellyfin-ready directory tree from a JSON file.")
+    parser.add_argument("json_path", help="Path to the ghibli_jellyfin_ready.json file")
+    parser.add_argument("target_dir", help="Target directory to create the tree in")
+    parser.add_argument("--dry-run", action="store_true", help="Only print what would be created")
+    parser.add_argument("--symlink", action="store_true", help="Create symlinks to source files instead of 0-byte files")
+    parser.add_argument("--rename-source", action="store_true", help="Rename source files to the suggested name and create a .bak 0-byte file with the original name")
+    parser.add_argument("--rename-dir", action="store_true", help="Rename source directories to the suggested directory name")
+    args = parser.parse_args()
+    build_tree_from_json(
+        args.json_path,
+        args.target_dir,
+        dry_run=args.dry_run,
+        use_symlink=args.symlink,
+        rename_source=args.rename_source,
+        rename_dir=args.rename_dir
+    )
+
+
+# def build_tree_from_json(json_path, target_dir, dry_run=False, use_symlink=False, rename_source=False):
+#     with open(json_path, "r", encoding="utf-8") as f:
+#         data = json.load(f)
+
+#     actions = []
+
+#     for section in ["matched", "unmatched"]:
+#         for entry in data.get(section, []):
+#             for file_info in entry.get("jellyfin_media_files", []):
+#                 suggested_path = file_info["suggested"]
+#                 original_path = file_info.get("original", suggested_path)
+#                 filename = os.path.basename(suggested_path)
+#                 subdir_name = os.path.splitext(filename)[0]
+#                 subdir_path = os.path.join(target_dir, subdir_name)
+#                 file_path = os.path.join(subdir_path, filename)
+#                 actions.append((subdir_path, file_path, original_path, suggested_path))
+
+#     if dry_run:
+#         print(f"Dry run: The following directory tree would be created under {target_dir}:")
+#         tree = {}
+#         for subdir, file_path, original_path, suggested_path in actions:
+#             rel_subdir = os.path.relpath(subdir, target_dir)
+#             tree.setdefault(rel_subdir, []).append(os.path.basename(file_path))
+#         for subdir, files in tree.items():
+#             print(f"{os.path.join(target_dir, subdir)}/")
+#             for f in files:
+#                 print(f"    {f}")
+#         if rename_source:
+#             print("\nDry run: The following source files would be renamed:")
+#             for _, _, original_path, suggested_path in actions:
+#                 if original_path != suggested_path:
+#                     bak_path = original_path + ".bak"
+#                     print(f"    Would create 0-byte: {bak_path}")
+#                     print(f"    Would rename: {original_path} -> {suggested_path}")
+#     else:
+#         for subdir, file_path, original_path, suggested_path in actions:
+#             os.makedirs(subdir, exist_ok=True)
+#             if rename_source:
+#                 # Create a 0-byte .bak file with the original filename
+#                 bak_path = original_path + ".bak"
+#                 if not os.path.exists(bak_path):
+#                     with open(bak_path, "wb"):
+#                         pass
+#                 # Rename the source file to the suggested name if different
+#                 if original_path != suggested_path and os.path.exists(original_path):
+#                     try:
+#                         os.rename(original_path, suggested_path)
+#                         print(f"Renamed: {original_path} -> {suggested_path}")
+#                     except Exception as e:
+#                         print(f"Failed to rename {original_path}: {e}")
+#             elif use_symlink:
+#                 # Create a symlink to the source file if it doesn't exist
+#                 if not os.path.exists(file_path):
+#                     try:
+#                         os.symlink(original_path, file_path)
+#                         print(f"Symlinked: {file_path} -> {original_path}")
+#                     except Exception as e:
+#                         print(f"Failed to symlink {file_path}: {e}")
+#             else:
+#                 # Create a 0-byte file if it doesn't exist
+#                 if not os.path.exists(file_path):
+#                     with open(file_path, "wb"):
+#                         pass
+#         print(f"Created {len(actions)} files in {target_dir} (symlink={use_symlink}, rename_source={rename_source})")
+
+# if __name__ == "__main__":
+#     parser = argparse.ArgumentParser(description="Build a Jellyfin-ready directory tree from a JSON file.")
+#     parser.add_argument("json_path", help="Path to the ghibli_jellyfin_ready.json file")
+#     parser.add_argument("target_dir", help="Target directory to create the tree in")
+#     parser.add_argument("--dry-run", action="store_true", help="Only print what would be created")
+#     parser.add_argument("--symlink", action="store_true", help="Create symlinks to source files instead of 0-byte files")
+#     parser.add_argument("--rename-source", action="store_true", help="Rename source files to the suggested name and create a .bak 0-byte file with the original name")
+#     args = parser.parse_args()
+#     build_tree_from_json(
+#         args.json_path,
+#         args.target_dir,
+#         dry_run=args.dry_run,
+#         use_symlink=args.symlink,
+#         rename_source=args.rename_source
+#     )
+
+
+
+# def build_tree_from_json(json_path, target_dir, dry_run=False, use_symlink=False):
+#     with open(json_path, "r", encoding="utf-8") as f:
+#         data = json.load(f)
+
+#     actions = []
+
+#     for section in ["matched", "unmatched"]:
+#         for entry in data.get(section, []):
+#             for file_info in entry.get("jellyfin_media_files", []):
+#                 suggested_path = file_info["suggested"]
+#                 original_path = file_info.get("original", suggested_path)
+#                 # Get the filename and its parent directory
+#                 filename = os.path.basename(suggested_path)
+#                 subdir_name = os.path.splitext(filename)[0]
+#                 subdir_path = os.path.join(target_dir, subdir_name)
+#                 file_path = os.path.join(subdir_path, filename)
+#                 actions.append((subdir_path, file_path, original_path))
+#     if dry_run:
+#         print(f"Dry run: The following directory tree would be created under {target_dir}:")
+#         tree = {}
+#         for subdir, file_path, original_path in actions:
+#             rel_subdir = os.path.relpath(subdir, target_dir)
+#             tree.setdefault(rel_subdir, []).append(os.path.basename(file_path))
+#         for subdir, files in tree.items():
+#             print(f"{os.path.join(target_dir, subdir)}/")
+#             for f in files:
+#                 print(f"    {f}")
+#     else:
+#         for subdir, file_path, original_path in actions:
+#             os.makedirs(subdir, exist_ok=True)
+#             if use_symlink:
+#                 # Create a symlink to the source file if it doesn't exist
+#                 if not os.path.exists(file_path):
+#                     try:
+#                         os.symlink(original_path, file_path)
+#                         print(f"Symlinked: {file_path} -> {original_path}")
+#                     except Exception as e:
+#                         print(f"Failed to symlink {file_path}: {e}")
+#             else:
+#                 # Create a 0-byte file if it doesn't exist
+#                 if not os.path.exists(file_path):
+#                     with open(file_path, "wb"):
+#                         pass
+#         print(f"Created {len(actions)} files in {target_dir} (symlink={use_symlink})")
+
+# if __name__ == "__main__":
+#     # python3 build_jellyfin_dir.py --dry-run --symlink ghibli_jellyfin_ready.json ./anime
+#     parser = argparse.ArgumentParser(description="Build a Jellyfin-ready directory tree from a JSON file.")
+#     parser.add_argument("json_path", help="Path to the ghibli_jellyfin_ready.json file")
+#     parser.add_argument("target_dir", help="Target directory to create the tree in")
+#     parser.add_argument("--dry-run", action="store_true", help="Only print what would be created")
+#     parser.add_argument("--symlink", action="store_true", help="Create symlinks to source files instead of 0-byte files")
+#     args = parser.parse_args()
+#     build_tree_from_json(args.json_path, args.target_dir, dry_run=args.dry_run, use_symlink=args.symlink)
+
+
+# import os
+# import json
+# import argparse
+
+
+
+
+# def build_tree_from_json(json_path, target_dir, dry_run=False):
+#     with open(json_path, "r", encoding="utf-8") as f:
+#         data = json.load(f)
+
+#     actions = []
+
+#     for section in ["matched", "unmatched"]:
+#         for entry in data.get(section, []):
+#             for file_info in entry.get("jellyfin_media_files", []):
+#                 suggested_path = file_info["suggested"]
+#                 # Get the filename and its parent directory
+#                 filename = os.path.basename(suggested_path)
+#                 subdir_name = os.path.splitext(filename)[0]
+#                 subdir_path = os.path.join(target_dir, subdir_name)
+#                 file_path = os.path.join(subdir_path, filename)
+#                 actions.append((subdir_path, file_path))
+#     print(actions)
+#     if dry_run:
+#         print(f"Dry run: The following directory tree would be created under {target_dir}:")
+#         tree = {}
+#         for subdir, file_path in actions:
+#             rel_subdir = os.path.relpath(subdir, target_dir)
+#             rel_file = os.path.relpath(file_path, target_dir)
+#             tree.setdefault(rel_subdir, []).append(os.path.basename(file_path))
+#         for subdir, files in tree.items():
+#             print(f"{os.path.join(target_dir, subdir)}/")
+#             for f in files:
+#                 print(f"    {f}")
+#     else:
+#         for subdir, file_path in actions:
+#             os.makedirs(subdir, exist_ok=True)
+#             # Create a 0-byte file if it doesn't exist
+#             if not os.path.exists(file_path):
+#                 with open(file_path, "wb"):
+#                     pass
+#         print(f"Created {len(actions)} files in {target_dir}")
+
+# if __name__ == "__main__":
+#     # python3 build_jellyfin_dir.py --dry-run ghibli_jellyfin_ready.json ./anime
+#     #
+#     parser = argparse.ArgumentParser(description="Build a Jellyfin-ready directory tree from a JSON file.")
+#     parser.add_argument("json_path", help="Path to the ghibli_jellyfin_ready.json file")
+#     parser.add_argument("target_dir", help="Target directory to create the tree in")
+#     parser.add_argument("--dry-run", action="store_true", help="Only print what would be created")
+#     args = parser.parse_args()
+#     build_tree_from_json(args.json_path, args.target_dir, dry_run=args.dry_run)

+ 31 - 0
delete_media.py

@@ -0,0 +1,31 @@
+import os
+import sys
+
+def delete_files_from_list(list_file, mock=False):
+    with open(list_file, "r", encoding="utf-8") as f:
+        files = [line.strip() for line in f if line.strip()]
+    deleted = 0
+    for file_path in files:
+        try:
+            if os.path.exists(file_path):
+                if mock:
+                    print(f"[MOCK] Would delete: {file_path}")
+                else:
+                    os.remove(file_path)
+                    print(f"Deleted: {file_path}")
+                    deleted += 1
+            else:
+                print(f"Not found: {file_path}")
+        except Exception as e:
+            print(f"Error deleting {file_path}: {e}")
+    if mock:
+        print(f"[MOCK] Total files that would be deleted: {len([f for f in files if os.path.exists(f)])}")
+    else:
+        print(f"Total deleted: {deleted}")
+
+if __name__ == "__main__":
+    if len(sys.argv) < 2:
+        print("Usage: python delete_media.py <file_list.txt> [--mock]")
+    else:
+        mock = "--mock" in sys.argv
+        delete_files_from_list(sys.argv[1], mock=mock)

+ 38 - 0
discard_media.py

@@ -0,0 +1,38 @@
+import os
+import sys
+
+def find_small_media_files(root_dir, max_size_mb=50, output_file="small_media_files.txt"):
+    import re
+    max_size_bytes = max_size_mb * 1024 * 1024
+    media_exts = ('.mkv', '.mp4', '.mht', '.txt', '.url', '.gif', '.mp4', '.mkv', '.avi', '.mov', '.flv', '.wmv', '.webm')
+    found = []
+    for dirpath, _, filenames in os.walk(root_dir):
+        for fname in filenames:
+            fpath = os.path.join(dirpath, fname)
+            # Check for extension, size, or pattern match
+            matches_ext_and_size = (
+                fname.lower().endswith(media_exts) and
+                os.path.getsize(fpath) < max_size_bytes
+            )
+            matches_pattern = (
+                fname.endswith("__") or
+                "padding" in fname.lower()
+            )
+            try:
+                if matches_ext_and_size or matches_pattern:
+                    found.append(fpath)
+            except Exception:
+                continue
+    with open(output_file, "w", encoding="utf-8") as f:
+        for path in found:
+            f.write(path + "\n")
+    print(f"Found {len(found)} files matching criteria. Results saved to {output_file}")
+
+if __name__ == "__main__":
+    if len(sys.argv) < 2:
+        print("Usage: python find_small_media.py <directory> [max_size_mb] [output_file]")
+    else:
+        root = sys.argv[1]
+        max_mb = int(sys.argv[2]) if len(sys.argv) > 2 else 1
+        out_file = sys.argv[3] if len(sys.argv) > 3 else "small_media_files.txt"
+        find_small_media_files(root, max_mb, out_file)

+ 9 - 0
docker/.env

@@ -0,0 +1,9 @@
+CONTAINER_NAME=jellyfin_dev
+MEDIA_PATH=/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm
+CONFIG_PATH=./config
+CACHE_PATH=./cache
+TRANSCODE_PATH=/path/to/your/transcode
+JELLYFIN_PORT=8097
+TZ=Asia/Shanghai
+PUID=1000
+PGID=1000

+ 19 - 0
docker/docker-compose.yml

@@ -0,0 +1,19 @@
+version: "3.8"
+services:
+  jellyfin:
+    image: lscr.io/linuxserver/jellyfin:latest
+    container_name: ${CONTAINER_NAME}
+    environment:
+      - PUID=${PUID}
+      - PGID=${PGID}
+      - TZ=${TZ}
+    volumes:
+      - ${CONFIG_PATH}:/config
+      - ${CACHE_PATH}:/cache
+      - ${TRANSCODE_PATH}:/transcode
+      - ${MEDIA_PATH}:/media
+    ports:
+      - "${JELLYFIN_PORT}:8096"
+    restart: "no"
+    devices:
+      - /dev/dri:/dev/dri # For hardware transcoding (optional)

+ 112 - 0
ghibili.py

@@ -0,0 +1,112 @@
+import os
+import json
+import requests
+
+def collect_chinese_titles(root_dir):
+    """Traverse the directory tree and collect all unique Chinese movie titles (directory names)."""
+    titles = set()
+    for dirpath, dirnames, _ in os.walk(root_dir):
+        for dirname in dirnames:
+            titles.add(dirname)
+    return list(titles)
+
+def match_english_title(chinese_title):
+    """
+    Match the Chinese title to an English title.
+    This can use a hard-coded mapping or call DeepSeek API for translation.
+    """
+    # Example hard-coded mapping (expand as needed)
+    hardcoded = {
+    "2013-辉夜姬物语": "The Tale of the Princess Kaguya",
+    "2004-哈尔移动城堡": "Howl's Moving Castle",
+    "1995-侧耳倾听": "Whisper of the Heart",
+    "1992-飞天红猪侠": "Porco Rosso",
+    "1988-萤火虫之墓": "Grave of the Fireflies",
+    "1989-魔女宅急便": "Kiki's Delivery Service",
+    "1994-百变狸猫": "Pom Poko",
+    "1984-风之谷": "Nausicaä of the Valley of the Wind",
+    "1979-鲁邦三世 卡里奥斯特罗城": "Lupin III: The Castle of Cagliostro",
+    "2011-虞美人盛开的山坡": "From Up on Poppy Hill",
+    "2008-《悬崖上的金鱼姬》《崖上的波妞》": "Ponyo",
+    "2006-地海战记": "Tales from Earthsea",
+    "2010 借东西的小矮人亚莉亚蒂": "The Secret World of Arrietty",
+    "2002-猫的报恩": "The Cat Returns",
+    "1999-我的邻居山田君": "My Neighbors the Yamadas",
+    "1988-龙猫": "My Neighbor Totoro",
+    "2001-千Yu千寻": "Spirited Away",
+    "1993-听到涛声": "Ocean Waves",
+    "2014-记忆中的玛妮": "When Marnie Was There",
+    "1991-岁月的童话": "Only Yesterday",
+    "1997-幽灵公主": "Princess Mononoke",
+    "2016-红海龟": "The Red Turtle",
+    "2013-起风了": "The Wind Rises"
+}
+    if chinese_title in hardcoded:
+        return hardcoded[chinese_title]
+
+    # Example DeepSeek API call (pseudo-code, replace with actual API details)
+    # Uncomment and fill in your DeepSeek API key and endpoint if available
+    # try:
+    #     response = requests.post(
+    #         "https://api.deepseek.com/translate",
+    #         json={"text": chinese_title, "source_lang": "zh", "target_lang": "en"},
+    #         headers={"Authorization": "Bearer YOUR_DEEPSEEK_API_KEY"}
+    #     )
+    #     if response.ok:
+    #         return response.json().get("translation")
+    # except Exception as e:
+    #     print(f"DeepSeek API error for {chinese_title}: {e}")
+
+    return None  # No match found
+
+def search_imdb_id(english_title):
+    """Search IMDb for the movie and return the IMDb ID."""
+    if not english_title:
+        return None
+    params = {"q": english_title, "s": "tt", "ttype": "ft", "ref_": "fn_ft"}
+    headers = {
+        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"
+    }
+    try:
+        resp = requests.get("https://www.imdb.com/find", params=params, headers=headers, timeout=10)
+        resp.raise_for_status()
+        import re
+        matches = re.findall(r'/title/(tt\d+)/', resp.text)
+        if matches:
+            return matches[0]
+    except Exception as e:
+        print(f"IMDb search error for {english_title}: {e}")
+    return None
+
+def main(root_dir):
+    chinese_titles = collect_chinese_titles(root_dir)
+    results = []
+    unmatched = []
+    print(f"Found {len(chinese_titles)} unique Chinese titles.")
+    for chinese_title in chinese_titles:
+        english_title = match_english_title(chinese_title)
+        imdb_id = search_imdb_id(english_title)
+        if english_title and imdb_id:
+            results.append({
+                "chinese": chinese_title,
+                "english": english_title,
+                "imdb_id": imdb_id
+            })
+        else:
+            unmatched.append({
+                "chinese": chinese_title,
+                "english": english_title,
+                "imdb_id": imdb_id if imdb_id else None,
+                "reason": "No English match" if not english_title else "No IMDb match"
+            })
+    print(f"Matched: {len(results)}")
+    print(f"Unmatched: {len(unmatched)}")
+    with open("ghibli_imdb_results.json", "w", encoding="utf-8") as f:
+        json.dump({"matched": results, "unmatched": unmatched}, f, ensure_ascii=False, indent=2)
+
+if __name__ == "__main__":
+    import sys
+    if len(sys.argv) < 2:
+        print("Usage: python ghiblil.py <directory /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画")
+    else:
+        main(sys.argv[1])

+ 151 - 0
ghibili2.py

@@ -0,0 +1,151 @@
+# -*- coding: utf-8 -*-
+
+import os
+import json
+import requests
+
+def collect_chinese_titles(root_dir):
+    """Traverse the directory tree and collect all unique Chinese movie titles (directory names)."""
+    titles = set()
+    for dirpath, dirnames, _ in os.walk(root_dir):
+        for dirname in dirnames:
+            titles.add(dirname)
+    return list(titles)
+
+def match_english_title(chinese_title):
+    """
+    Match the Chinese title to an English title.
+    This can use a hard-coded mapping or call DeepSeek API for translation.
+    """
+    hardcoded = {
+        "2013-辉夜姬物语": "The Tale of the Princess Kaguya",
+        "2004-哈尔移动城堡": "Howl's Moving Castle",
+        "1995-侧耳倾听": "Whisper of the Heart",
+        "1992-飞天红猪侠": "Porco Rosso",
+        "1988-萤火虫之墓": "Grave of the Fireflies",
+        "1989-魔女宅急便": "Kiki's Delivery Service",
+        "1994-百变狸猫": "Pom Poko",
+        "1984-风之谷": "Nausicaä of the Valley of the Wind",
+        "1979-鲁邦三世 卡里奥斯特罗城": "Lupin III: The Castle of Cagliostro",
+        "2011-虞美人盛开的山坡": "From Up on Poppy Hill",
+        "2008-《悬崖上的金鱼姬》《崖上的波妞》": "Ponyo",
+        "2006-地海战记": "Tales from Earthsea",
+        "2010 借东西的小矮人亚莉亚蒂": "The Secret World of Arrietty",
+        "2002-猫的报恩": "The Cat Returns",
+        "1999-我的邻居山田君": "My Neighbors the Yamadas",
+        "1988-龙猫": "My Neighbor Totoro",
+        "2001-千Yu千寻": "Spirited Away",
+        "1993-听到涛声": "Ocean Waves",
+        "2014-记忆中的玛妮": "When Marnie Was There",
+        "1991-岁月的童话": "Only Yesterday",
+        "1997-幽灵公主": "Princess Mononoke",
+        "2016-红海龟": "The Red Turtle",
+        "2013-起风了": "The Wind Rises"
+    }
+    if chinese_title in hardcoded:
+        return hardcoded[chinese_title]
+    # Optionally add DeepSeek API translation here
+    return None  # No match found
+
+def search_imdb_id(english_title):
+    """Search IMDb for the movie and return the IMDb ID."""
+    if not english_title:
+        return None
+    params = {"q": english_title, "s": "tt", "ttype": "ft", "ref_": "fn_ft"}
+    headers = {
+        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"
+    }
+    try:
+        resp = requests.get("https://www.imdb.com/find", params=params, headers=headers, timeout=10)
+        resp.raise_for_status()
+        import re
+        matches = re.findall(r'/title/(tt\d+)/', resp.text)
+        if matches:
+            return matches[0]
+    except Exception as e:
+        print(f"IMDb search error for {english_title}: {e}")
+    return None
+
+def search_tmdb_id(english_title, api_key):
+    """Search TMDB for the movie and return the TMDB ID and IMDb ID if available."""
+    if not english_title or not api_key:
+        return None, None
+    url = "https://api.themoviedb.org/3/search/movie"
+    params = {
+        "api_key": api_key,
+        "query": english_title,
+        "language": "en-US"
+    }
+    try:
+        resp = requests.get(url, params=params, timeout=10)
+        resp.raise_for_status()
+        data = resp.json()
+        if data.get("results"):
+            movie = data["results"][0]
+            tmdb_id = movie.get("id")
+            imdb_id = None
+            # Try to get IMDb ID from TMDB details
+            details_url = f"https://api.themoviedb.org/3/movie/{tmdb_id}"
+            details_params = {"api_key": api_key}
+            details_resp = requests.get(details_url, params=details_params, timeout=10)
+            if details_resp.ok:
+                imdb_id = details_resp.json().get("imdb_id")
+            return tmdb_id, imdb_id
+    except Exception as e:
+        print(f"TMDB search error for {english_title}: {e}")
+    return None, None
+
+def main(root_dir, use_tmdb=False, tmdb_api_key=None):
+    chinese_titles = collect_chinese_titles(root_dir)
+    results = []
+    unmatched = []
+    print(f"Found {len(chinese_titles)} unique Chinese titles.")
+    for chinese_title in chinese_titles:
+        english_title = match_english_title(chinese_title)
+        imdb_id = None
+        tmdb_id = None
+        if use_tmdb and tmdb_api_key:
+            try:
+                search_str = chinese_title.split("-")[1]
+                print(f"Using TMDB API for ID search for title {search_str} ")            
+                tmdb_id, imdb_id = search_tmdb_id(search_str, tmdb_api_key)
+            except IndexError as e:
+                continue
+        else:
+            imdb_id = search_imdb_id(english_title)
+        if english_title and (imdb_id or tmdb_id):
+            entry = {
+                "chinese": chinese_title,
+                "english": english_title,
+            }
+            if imdb_id:
+                entry["imdb_id"] = imdb_id
+            if tmdb_id:
+                entry["tmdb_id"] = tmdb_id
+            results.append(entry)
+        else:
+            unmatched.append({
+                "chinese": chinese_title,
+                "english": english_title,
+                "imdb_id": imdb_id if imdb_id else None,
+                "tmdb_id": tmdb_id if tmdb_id else None,
+                "reason": "No English match" if not english_title else "No ID match"
+            })
+    print(f"Matched: {len(results)}")
+    print(f"Unmatched: {len(unmatched)}")
+    with open("ghibli_imdb_results.json", "w", encoding="utf-8") as f:
+        json.dump({"matched": results, "unmatched": unmatched}, f, ensure_ascii=False, indent=2)
+
+if __name__ == "__main__":
+    import sys
+    # Usage: python ghibili.py <directory> [--tmdb TMDB_API_KEY]
+    use_tmdb = False
+    tmdb_api_key = '36dfc5c362f731b9b777e1f30028fbb0'
+    if len(sys.argv) < 2:
+        print("Usage: python ghiblil.py <directory> [--tmdb TMDB_API_KEY]")
+    else:
+        root_dir = sys.argv[1]
+        if len(sys.argv) >= 4 and sys.argv[2] == "--tmdb":
+            use_tmdb = True
+            tmdb_api_key = sys.argv[3]
+        main(root_dir, use_tmdb, tmdb_api_key)

+ 195 - 0
ghibili3.py

@@ -0,0 +1,195 @@
+# -*- coding: utf-8 -*-
+
+import os
+import json
+import requests
+
+def collect_chinese_titles(root_dir):
+    """Traverse the directory tree and collect all unique Chinese movie titles (directory names)."""
+    titles = set()
+    for dirpath, dirnames, _ in os.walk(root_dir):
+        for dirname in dirnames:
+            titles.add(dirname)
+    return list(titles)
+
+def match_english_title(chinese_title):
+    """
+    Match the Chinese title to an English title.
+    This can use a hard-coded mapping or call DeepSeek API for translation.
+    """
+    hardcoded = {
+        "2013-辉夜姬物语": "The Tale of the Princess Kaguya",
+        "2004-哈尔移动城堡": "Howl's Moving Castle",
+        "1995-侧耳倾听": "Whisper of the Heart",
+        "1992-飞天红猪侠": "Porco Rosso",
+        "1988-萤火虫之墓": "Grave of the Fireflies",
+        "1989-魔女宅急便": "Kiki's Delivery Service",
+        "1994-百变狸猫": "Pom Poko",
+        "1984-风之谷": "Nausicaä of the Valley of the Wind",
+        "1979-鲁邦三世 卡里奥斯特罗城": "Lupin III: The Castle of Cagliostro",
+        "2011-虞美人盛开的山坡": "From Up on Poppy Hill",
+        "2008-《悬崖上的金鱼姬》《崖上的波妞》": "Ponyo",
+        "2006-地海战记": "Tales from Earthsea",
+        "2010-借东西的小矮人亚莉亚蒂": "The Secret World of Arrietty",
+        "2002-猫的报恩": "The Cat Returns",
+        "1999-我的邻居山田君": "My Neighbors the Yamadas",
+        "1988-龙猫": "My Neighbor Totoro",
+        "2001-千Yu千寻": "Spirited Away",
+        "1993-听到涛声": "Ocean Waves",
+        "2014-记忆中的玛妮": "When Marnie Was There",
+        "1991-岁月的童话": "Only Yesterday",
+        "1997-幽灵公主": "Princess Mononoke",
+        "2016-红海龟": "The Red Turtle",
+        "2013-起风了": "The Wind Rises"
+    }
+    if chinese_title in hardcoded:
+        return hardcoded[chinese_title]
+    # Optionally add DeepSeek API translation here
+    return None  # No match found
+
+def search_imdb_id(english_title):
+    """Search IMDb for the movie and return the IMDb ID."""
+    if not english_title:
+        return None
+    params = {"q": english_title, "s": "tt", "ttype": "ft", "ref_": "fn_ft"}
+    headers = {
+        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"
+    }
+    try:
+        resp = requests.get("https://www.imdb.com/find", params=params, headers=headers, timeout=10)
+        resp.raise_for_status()
+        import re
+        matches = re.findall(r'/title/(tt\d+)/', resp.text)
+        if matches:
+            return matches[0]
+    except Exception as e:
+        print(f"IMDb search error for {english_title}: {e}")
+    return None
+
+def search_tmdb_id(english_title, api_key):
+    """Search TMDB for the movie and return the TMDB ID and IMDb ID if available."""
+    if not english_title or not api_key:
+        return None, None
+    url = "https://api.themoviedb.org/3/search/movie"
+    params = {
+        "api_key": api_key,
+        "query": english_title,
+        "language": "en-US"
+    }
+    try:
+        resp = requests.get(url, params=params, timeout=10)
+        resp.raise_for_status()
+        data = resp.json()
+        if data.get("results"):
+            movie = data["results"][0]
+            tmdb_id = movie.get("id")
+            imdb_id = None
+            # Try to get IMDb ID from TMDB details
+            details_url = f"https://api.themoviedb.org/3/movie/{tmdb_id}"
+            details_params = {"api_key": api_key}
+            details_resp = requests.get(details_url, params=details_params, timeout=10)
+            if details_resp.ok:
+                imdb_id = details_resp.json().get("imdb_id")
+            return tmdb_id, imdb_id
+    except Exception as e:
+        print(f"TMDB search error for {english_title}: {e}")
+    return None, None
+def collect_chinese_titles_and_paths(root_dir):
+    """Traverse the directory tree and collect all unique Chinese movie titles (directory names) and their paths."""
+    titles = []
+    paths = {}
+    for dirpath, dirnames, _ in os.walk(root_dir):
+        for dirname in dirnames:
+            titles.append(dirname)
+            paths[dirname] = os.path.join(dirpath, dirname)
+    return titles, paths
+
+
+def main(root_dir, use_tmdb=False, tmdb_api_key=None):
+    chinese_titles, dir_paths = collect_chinese_titles_and_paths(root_dir)
+    results = []
+    unmatched = []
+    print(f"Found {len(chinese_titles)} unique Chinese titles.")
+    for chinese_title in chinese_titles:
+        english_title = match_english_title(chinese_title)
+        imdb_id = None
+        tmdb_id = None
+        dir_path = dir_paths.get(chinese_title, "")
+
+        # If using TMDB, search by the second token (Chinese title) for better accuracy
+        if use_tmdb and tmdb_api_key:
+            try:
+                search_str = chinese_title.split("-", 1)[1]
+            except IndexError:
+                search_str = chinese_title
+            print(f"Using TMDB API for ID search for title {search_str}")
+            tmdb_id, imdb_id, fetched_english_title = None, None, None
+            url = "https://api.themoviedb.org/3/search/movie"
+            params = {
+                "api_key": tmdb_api_key,
+                "query": search_str,
+                "language": "zh-CN"
+            }
+            try:
+                resp = requests.get(url, params=params, timeout=10)
+                resp.raise_for_status()
+                data = resp.json()
+                if data.get("results"):
+                    movie = data["results"][0]
+                    tmdb_id = movie.get("id")
+                    # Try to get English title from TMDB details
+                    details_url = f"https://api.themoviedb.org/3/movie/{tmdb_id}"
+                    details_params = {"api_key": tmdb_api_key, "language": "en-US"}
+                    details_resp = requests.get(details_url, params=details_params, timeout=10)
+                    if details_resp.ok:
+                        details = details_resp.json()
+                        fetched_english_title = details.get("title")
+                        imdb_id = details.get("imdb_id")
+            except Exception as e:
+                print(f"TMDB search error for {search_str}: {e}")
+        else:
+            imdb_id = search_imdb_id(english_title)
+            fetched_english_title = english_title
+
+        # Prefer fetched English title if available
+        final_english_title = fetched_english_title if fetched_english_title else english_title
+
+        if final_english_title and (imdb_id or tmdb_id):
+            entry = {
+                "chinese": chinese_title,
+                "english": final_english_title,
+                "path": dir_path
+            }
+            if imdb_id:
+                entry["imdb_id"] = imdb_id
+            if tmdb_id:
+                entry["tmdb_id"] = tmdb_id
+            results.append(entry)
+        else:
+            unmatched.append({
+                "chinese": chinese_title,
+                "english": final_english_title,
+                "imdb_id": imdb_id if imdb_id else None,
+                "tmdb_id": tmdb_id if tmdb_id else None,
+                "path": dir_path,
+                "reason": "No English match" if not final_english_title else "No ID match"
+            })
+    print(f"Matched: {len(results)}")
+    print(f"Unmatched: {len(unmatched)}")
+    with open("ghibli_imdb_results.json", "w", encoding="utf-8") as f:
+        json.dump({"matched": results, "unmatched": unmatched}, f, ensure_ascii=False, indent=2)
+
+
+if __name__ == "__main__":
+    import sys
+    # Usage: python ghibili.py <directory> [--tmdb TMDB_API_KEY]
+    use_tmdb = False
+    tmdb_api_key = '36dfc5c362f731b9b777e1f30028fbb0'
+    if len(sys.argv) < 2:
+        print("Usage: python ghiblil.py <directory> [--tmdb TMDB_API_KEY]")
+    else:
+        root_dir = sys.argv[1]
+        if len(sys.argv) >= 4 and sys.argv[2] == "--tmdb":
+            use_tmdb = True
+            tmdb_api_key = sys.argv[3]
+        main(root_dir, use_tmdb, tmdb_api_key)

+ 217 - 0
ghibili4.py

@@ -0,0 +1,217 @@
+# -*- coding: utf-8 -*-
+
+import os
+import json
+import requests
+
+def collect_chinese_titles_and_paths(root_dir):
+    """Traverse the directory tree and collect all unique Chinese movie titles (directory names) and their paths,
+    excluding directories containing certain keywords. Also collect .mkv and .mp4 files (even with unwanted trailing chars),
+    but ignore files containing '国语' in their filename."""
+    exclude_keywords = ['删除文件', '默认日语', '切换语言']
+    titles = []
+    paths = {}
+    media_files = {}
+    for dirpath, dirnames, filenames in os.walk(root_dir):
+        for dirname in dirnames:
+            if any(keyword in dirname for keyword in exclude_keywords):
+                continue
+            full_path = os.path.join(dirpath, dirname)
+            titles.append(dirname)
+            paths[dirname] = full_path
+            # Collect .mkv and .mp4 files, allowing for unwanted trailing chars (e.g., .mkv1, .mp41)
+            try:
+                files_in_dir = os.listdir(full_path)
+                media_files[dirname] = [
+                    os.path.join(full_path, f)
+                    for f in files_in_dir
+                    if (
+                        (f.lower().endswith(('.mkv', '.mp4')) or
+                         f.lower().endswith(('.mkv1', '.mp41')) or
+                         any(f.lower().endswith(ext + str(i)) for ext in ['.mkv', '.mp4'] for i in range(1, 10)))
+                        and '国语' not in f
+                        and '720P' not in f
+                    )
+                ]
+            except Exception as e:
+                media_files[dirname] = []
+    return titles, paths, media_files
+
+def match_english_title(chinese_title):
+    """
+    Match the Chinese title to an English title.
+    This can use a hard-coded mapping or call DeepSeek API for translation.
+    """
+    hardcoded = {
+        "2013-辉夜姬物语": "The Tale of the Princess Kaguya",
+        "2004-哈尔移动城堡": "Howl's Moving Castle",
+        "1995-侧耳倾听": "Whisper of the Heart",
+        "1992-飞天红猪侠": "Porco Rosso",
+        "1988-萤火虫之墓": "Grave of the Fireflies",
+        "1989-魔女宅急便": "Kiki's Delivery Service",
+        "1994-百变狸猫": "Pom Poko",
+        "1984-风之谷": "Nausicaä of the Valley of the Wind",
+        "1979-鲁邦三世 卡里奥斯特罗城": "Lupin III: The Castle of Cagliostro",
+        "2011-虞美人盛开的山坡": "From Up on Poppy Hill",
+        "2008-《悬崖上的金鱼姬》《崖上的波妞》": "Ponyo",
+        "2006-地海战记": "Tales from Earthsea",
+        "2010-借东西的小矮人亚莉亚蒂": "The Secret World of Arrietty",
+        "2002-猫的报恩": "The Cat Returns",
+        "1999-我的邻居山田君": "My Neighbors the Yamadas",
+        "1988-龙猫": "My Neighbor Totoro",
+        "2001-千Yu千寻": "Spirited Away",
+        "1993-听到涛声": "Ocean Waves",
+        "2014-记忆中的玛妮": "When Marnie Was There",
+        "1991-岁月的童话": "Only Yesterday",
+        "1997-幽灵公主": "Princess Mononoke",
+        "2016-红海龟": "The Red Turtle",
+        "2013-起风了": "The Wind Rises"
+    }
+    if chinese_title in hardcoded:
+        return hardcoded[chinese_title]
+    # Optionally add DeepSeek API translation here
+    return None  # No match found
+
+def search_imdb_id(english_title):
+    """Search IMDb for the movie and return the IMDb ID."""
+    if not english_title:
+        return None
+    params = {"q": english_title, "s": "tt", "ttype": "ft", "ref_": "fn_ft"}
+    headers = {
+        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"
+    }
+    try:
+        resp = requests.get("https://www.imdb.com/find", params=params, headers=headers, timeout=10)
+        resp.raise_for_status()
+        import re
+        matches = re.findall(r'/title/(tt\d+)/', resp.text)
+        if matches:
+            return matches[0]
+    except Exception as e:
+        print(f"IMDb search error for {english_title}: {e}")
+    return None
+
+def search_tmdb_id(english_title, api_key):
+    """Search TMDB for the movie and return the TMDB ID and IMDb ID if available."""
+    if not english_title or not api_key:
+        return None, None
+    url = "https://api.themoviedb.org/3/search/movie"
+    params = {
+        "api_key": api_key,
+        "query": english_title,
+        "language": "en-US"
+    }
+    try:
+        resp = requests.get(url, params=params, timeout=10)
+        resp.raise_for_status()
+        data = resp.json()
+        if data.get("results"):
+            movie = data["results"][0]
+            tmdb_id = movie.get("id")
+            imdb_id = None
+            # Try to get IMDb ID from TMDB details
+            details_url = f"https://api.themoviedb.org/3/movie/{tmdb_id}"
+            details_params = {"api_key": api_key}
+            details_resp = requests.get(details_url, params=details_params, timeout=10)
+            if details_resp.ok:
+                imdb_id = details_resp.json().get("imdb_id")
+            return tmdb_id, imdb_id
+    except Exception as e:
+        print(f"TMDB search error for {english_title}: {e}")
+    return None, None
+
+
+
+def main(root_dir, use_tmdb=False, tmdb_api_key=None):
+    chinese_titles, dir_paths, media_files = collect_chinese_titles_and_paths(root_dir)
+    results = []
+    unmatched = []
+    print(f"Found {len(chinese_titles)} unique Chinese titles.")
+    for chinese_title in chinese_titles:
+        english_title = match_english_title(chinese_title)
+        imdb_id = None
+        tmdb_id = None
+        dir_path = dir_paths.get(chinese_title, "")
+        media_list = media_files.get(chinese_title, [])
+
+        # If using TMDB, search by the second token (Chinese title) for better accuracy
+        if use_tmdb and tmdb_api_key:
+            try:
+                search_str = chinese_title.split("-", 1)[1]
+            except IndexError:
+                search_str = chinese_title
+            print(f"Using TMDB API for ID search for title {search_str}")
+            tmdb_id, imdb_id, fetched_english_title = None, None, None
+            url = "https://api.themoviedb.org/3/search/movie"
+            params = {
+                "api_key": tmdb_api_key,
+                "query": search_str,
+                "language": "zh-CN"
+            }
+            try:
+                resp = requests.get(url, params=params, timeout=10)
+                resp.raise_for_status()
+                data = resp.json()
+                if data.get("results"):
+                    movie = data["results"][0]
+                    tmdb_id = movie.get("id")
+                    # Try to get English title from TMDB details
+                    details_url = f"https://api.themoviedb.org/3/movie/{tmdb_id}"
+                    details_params = {"api_key": tmdb_api_key, "language": "en-US"}
+                    details_resp = requests.get(details_url, params=details_params, timeout=10)
+                    if details_resp.ok:
+                        details = details_resp.json()
+                        fetched_english_title = details.get("title")
+                        imdb_id = details.get("imdb_id")
+            except Exception as e:
+                print(f"TMDB search error for {search_str}: {e}")
+        else:
+            imdb_id = search_imdb_id(english_title)
+            fetched_english_title = english_title
+
+        # Prefer fetched English title if available
+        final_english_title = fetched_english_title if fetched_english_title else english_title
+
+        if final_english_title and (imdb_id or tmdb_id):
+            entry = {
+                "chinese": chinese_title,
+                "english": final_english_title,
+                "path": dir_path,
+                "media_files": media_list
+            }
+            if imdb_id:
+                entry["imdb_id"] = imdb_id
+            if tmdb_id:
+                entry["tmdb_id"] = tmdb_id
+            results.append(entry)
+        else:
+            unmatched.append({
+                "chinese": chinese_title,
+                "english": final_english_title,
+                "imdb_id": imdb_id if imdb_id else None,
+                "tmdb_id": tmdb_id if tmdb_id else None,
+                "path": dir_path,
+                "media_files": media_list,
+                "reason": "No English match" if not final_english_title else "No ID match"
+            })
+    print(f"Matched: {len(results)}")
+    print(f"Unmatched: {len(unmatched)}")
+    with open("ghibli_imdb_results.json", "w", encoding="utf-8") as f:
+        json.dump({"matched": results, "unmatched": unmatched}, f, ensure_ascii=False, indent=2)
+
+
+
+if __name__ == "__main__":
+    import sys
+    # Usage: python ghibili.py <directory> [--tmdb TMDB_API_KEY]
+    # Example: python3 ghibili4.py /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画 --tmdb 36dfc5c362f731b9b777e1f30028fbb0
+    use_tmdb = False
+    tmdb_api_key = '36dfc5c362f731b9b777e1f30028fbb0'
+    if len(sys.argv) < 2:
+        print("Usage: python ghiblil.py <directory> [--tmdb TMDB_API_KEY]")
+    else:
+        root_dir = sys.argv[1]
+        if len(sys.argv) >= 4 and sys.argv[2] == "--tmdb":
+            use_tmdb = True
+            tmdb_api_key = sys.argv[3]
+        main(root_dir, use_tmdb, tmdb_api_key)

+ 422 - 0
ghibli_imdb_results-saved.json

@@ -0,0 +1,422 @@
+{
+  "matched": [
+    {
+      "chinese": "2013-起风了",
+      "english": "The Wind Rises",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/2013-起风了【国语】.mkv1",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/2013-起风了【日语】.mp4"
+      ],
+      "imdb_id": "tt2013293",
+      "tmdb_id": 149870
+    },
+    {
+      "chinese": "1995-侧耳倾听",
+      "english": "Whisper of the Heart",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/1995侧耳倾听(日语).mp41",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/1995侧耳倾听(国语).mp41"
+      ],
+      "imdb_id": "tt0113824",
+      "tmdb_id": 37797
+    },
+    {
+      "chinese": "2006-穿越时空的少女",
+      "english": "Time Traveller: The Girl Who Leapt Through Time",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/2006-C越時空的少女【日语】.mkv1"
+      ],
+      "imdb_id": "tt1614408",
+      "tmdb_id": 54770
+    },
+    {
+      "chinese": "2019-天气之子",
+      "english": "Weathering with You",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/天气之子.原盘中字.mp4"
+      ],
+      "imdb_id": "tt9426210",
+      "tmdb_id": 568160
+    },
+    {
+      "chinese": "2016-红海龟",
+      "english": "The Red Turtle",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/2016-红海龟.mkv"
+      ],
+      "imdb_id": "tt3666024",
+      "tmdb_id": 337703
+    },
+    {
+      "chinese": "2011-虞美人盛开的山坡",
+      "english": "From Up on Poppy Hill",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/2011来自虞美人之坡【日语】.mp4",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/2011来自虞美人之坡【国语】.mp41"
+      ],
+      "imdb_id": "tt1798188",
+      "tmdb_id": 83389
+    },
+    {
+      "chinese": "2001-千与千寻",
+      "english": "Spirited Away",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/2001 千与千X.【国语】.mp4",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/2001 千与千X.【日语】.mp4"
+      ],
+      "imdb_id": "tt0245429",
+      "tmdb_id": 129
+    },
+    {
+      "chinese": "2011-追逐繁星的孩子",
+      "english": "Children Who Chase Lost Voices",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt1839494",
+      "tmdb_id": 79707
+    },
+    {
+      "chinese": "1991-岁月的童话",
+      "english": "Only Yesterday",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/1991岁月的童话(国语).mp41",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/1991岁月的童话(日语).mp4"
+      ],
+      "imdb_id": "tt0102587",
+      "tmdb_id": 15080
+    },
+    {
+      "chinese": "1988-龙猫",
+      "english": "My Neighbor Totoro",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/1988龙猫(国语).mp41",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/1988龙猫(日语).mp4"
+      ],
+      "imdb_id": "tt0096283",
+      "tmdb_id": 8392
+    },
+    {
+      "chinese": "1988-萤火虫之墓",
+      "english": "Grave of the Fireflies",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/1988萤火虫之墓.(国语).mp41",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/1988萤火虫之墓(日语).mp41"
+      ],
+      "imdb_id": "tt0491652",
+      "tmdb_id": 76826
+    },
+    {
+      "chinese": "1993-听到涛声",
+      "english": "Ocean Waves",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/国日双语【默认日语】.mkv"
+      ],
+      "imdb_id": "tt0108432",
+      "tmdb_id": 21057
+    },
+    {
+      "chinese": "2008-《悬崖上的金鱼姬》《崖上的波妞》",
+      "english": "Ponyo",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/2008悬崖 日语中字.mp41"
+      ],
+      "imdb_id": "tt0876563",
+      "tmdb_id": 12429
+    },
+    {
+      "chinese": "1989-魔女宅急便",
+      "english": "Kiki's Delivery Service",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/1989魔女宅急便(国语).mp4",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/1989魔女宅急便(日语).mp41"
+      ],
+      "imdb_id": "tt0097814",
+      "tmdb_id": 16859
+    },
+    {
+      "chinese": "2013-梦与狂想的王国",
+      "english": "The Kingdom of Dreams and Madness",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/2013-梦与狂想的王国.mkv1"
+      ],
+      "imdb_id": "tt3204392",
+      "tmdb_id": 252511
+    },
+    {
+      "chinese": "2013-某人的目光",
+      "english": "Someone's Gaze",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/某人的目光.2013.中日双语.BluRay.1080P.mp4"
+      ],
+      "imdb_id": "tt3300814",
+      "tmdb_id": 222715
+    },
+    {
+      "chinese": "1992-飞天红猪侠",
+      "english": "Porco Rosso",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/1992飞天红猪侠(国语).mp4",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/1992飞天红猪侠(日语).mp4"
+      ],
+      "imdb_id": "tt0104652",
+      "tmdb_id": 11621
+    },
+    {
+      "chinese": "2002-星之声",
+      "english": "Voices of a Distant Star",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/默认字幕版720P.mp4",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt0370754",
+      "tmdb_id": 37910
+    },
+    {
+      "chinese": "2013-言叶之庭",
+      "english": "The Garden of Words",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/言YZ庭1080P.mp4"
+      ],
+      "imdb_id": "tt2591814",
+      "tmdb_id": 198375
+    },
+    {
+      "chinese": "2006-地海战记",
+      "english": "Tales from Earthsea",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/2006地海战记(日语).mp41",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/2006地海战记(国语).mp41"
+      ],
+      "imdb_id": "tt0495596",
+      "tmdb_id": 37933
+    },
+    {
+      "chinese": "2007-秒速五厘米",
+      "english": "5 Centimeters per Second",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/默认字幕版720P.mkv",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt0983213",
+      "tmdb_id": 38142
+    },
+    {
+      "chinese": "2002-吉卜力工作室特別短片合辑",
+      "english": "Ghiblies",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/2002-吉卜力工作室特別短片合辑.mkv"
+      ],
+      "imdb_id": "tt0893523",
+      "tmdb_id": 222471
+    },
+    {
+      "chinese": "2016-你的名字",
+      "english": "Your Name.",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/2016-你的名字.mp4"
+      ],
+      "imdb_id": "tt5311514",
+      "tmdb_id": 372058
+    },
+    {
+      "chinese": "2004-哈尔移动城堡",
+      "english": "Howl's Moving Castle",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/2004-哈尔移动城堡【日语】.mkv1",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/2004-哈尔移动城堡【国语】.mkv1"
+      ],
+      "imdb_id": "tt0347149",
+      "tmdb_id": 4935
+    },
+    {
+      "chinese": "1994-百变狸猫",
+      "english": "Pom Poko",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/1994百变狸猫BD国日粤3语中字.mkv1"
+      ],
+      "imdb_id": "tt0110008",
+      "tmdb_id": 15283
+    },
+    {
+      "chinese": "1997-幽灵公主",
+      "english": "Princess Mononoke",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/1997幽灵公主(日语).mp41",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/1997幽灵公主(国语).mp41"
+      ],
+      "imdb_id": "tt0119698",
+      "tmdb_id": 128
+    },
+    {
+      "chinese": "2014-记忆中的玛妮",
+      "english": "When Marnie Was There",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/2014-记忆中的玛妮.mp41"
+      ],
+      "imdb_id": "tt3398268",
+      "tmdb_id": 242828
+    },
+    {
+      "chinese": "2004-云的彼端,约定的地方",
+      "english": "The Place Promised in Our Early Days",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能)).mkv",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/默认字幕版720P.mkv"
+      ],
+      "imdb_id": "tt0381348",
+      "tmdb_id": 12924
+    },
+    {
+      "chinese": "1984-风之谷",
+      "english": "Nausicaä of the Valley of the Wind",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/1984风之谷(国语).mp4",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/1984风之谷(日语).mp4"
+      ],
+      "imdb_id": "tt0087544",
+      "tmdb_id": 81
+    },
+    {
+      "chinese": "1979-鲁邦三世 卡里奥斯特罗城",
+      "english": "Lupin the Third: The Castle of Cagliostro",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/1979鲁邦三世:卡里奥斯特罗城(日语).mp4"
+      ],
+      "imdb_id": "tt0079833",
+      "tmdb_id": 15371
+    },
+    {
+      "chinese": "2013-辉夜姬物语",
+      "english": "The Tale of The Princess Kaguya",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/辉夜姬物语.mp41"
+      ],
+      "imdb_id": "tt2576852",
+      "tmdb_id": 149871
+    },
+    {
+      "chinese": "1986-天空之城",
+      "english": "Castle in the Sky",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/1986-天空之城【日语】.mp41",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/1986-天空之城【国语】.mp4"
+      ],
+      "imdb_id": "tt0092067",
+      "tmdb_id": 10515
+    },
+    {
+      "chinese": "2002-猫的报恩",
+      "english": "The Cat Returns",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/2002猫的报恩(国语).mp4",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/2002猫的报恩(日语).mp4"
+      ],
+      "imdb_id": "tt0347618",
+      "tmdb_id": 15370
+    },
+    {
+      "chinese": "1999-我的邻居山田君",
+      "english": "My Neighbors the Yamadas",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/1999我的邻居山田君(国语).mp41",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/1999我的邻居山田君(日语).mp4"
+      ],
+      "imdb_id": "tt0206013",
+      "tmdb_id": 16198
+    }
+  ],
+  "unmatched": [
+    {
+      "chinese": "1999-她与她的猫",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/默认字幕版720P.mp4",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "reason": "No English match"
+    },
+    {
+      "chinese": "2010 借东西的小矮人亚莉亚蒂",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010 借东西的小矮人亚莉亚蒂",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010 借东西的小矮人亚莉亚蒂/2010借东西的小人阿莉埃蒂(国语).mp41",
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010 借东西的小矮人亚莉亚蒂/2010借东西的小人阿莉埃蒂(日语).mp4"
+      ],
+      "reason": "No English match"
+    },
+    {
+      "chinese": "2014-十字路口【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/十字路口.CrossRoad.2014.中日双语.BluRay.1080P.mp4"
+      ],
+      "reason": "No English match"
+    },
+    {
+      "chinese": "2007-猫的集会【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/猫的集会.2007.中日双语.BluRay.1080P.mp4"
+      ],
+      "reason": "No English match"
+    },
+    {
+      "chinese": "2003-笑颜【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/笑颜.2003.中日双语.mp4"
+      ],
+      "reason": "No English match"
+    }
+  ]
+}

+ 400 - 0
ghibli_imdb_results.json

@@ -0,0 +1,400 @@
+{
+  "matched": [
+    {
+      "chinese": "2013-起风了",
+      "english": "The Wind Rises",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/2013-起风了【日语】.mp4"
+      ],
+      "imdb_id": "tt2013293",
+      "tmdb_id": 149870
+    },
+    {
+      "chinese": "1995-侧耳倾听",
+      "english": "Whisper of the Heart",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/1995侧耳倾听(日语).mp4"
+      ],
+      "imdb_id": "tt0113824",
+      "tmdb_id": 37797
+    },
+    {
+      "chinese": "2006-穿越时空的少女",
+      "english": "Time Traveller: The Girl Who Leapt Through Time",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/2006-C越時空的少女【日语】.mkv1"
+      ],
+      "imdb_id": "tt1614408",
+      "tmdb_id": 54770
+    },
+    {
+      "chinese": "2019-天气之子",
+      "english": "Weathering with You",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/天气之子.原盘中字.mp4"
+      ],
+      "imdb_id": "tt9426210",
+      "tmdb_id": 568160
+    },
+    {
+      "chinese": "2016-红海龟",
+      "english": "The Red Turtle",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/2016-红海龟.mkv"
+      ],
+      "imdb_id": "tt3666024",
+      "tmdb_id": 337703
+    },
+    {
+      "chinese": "2011-虞美人盛开的山坡",
+      "english": "From Up on Poppy Hill",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/2011来自虞美人之坡【日语】.mp4"
+      ],
+      "imdb_id": "tt1798188",
+      "tmdb_id": 83389
+    },
+    {
+      "chinese": "2010-借东西的小矮人亚莉亚蒂",
+      "english": "The Secret World of Arrietty",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/2010借东西的小人阿莉埃蒂(日语).mp4"
+      ],
+      "imdb_id": "tt1568921",
+      "tmdb_id": 51739
+    },
+    {
+      "chinese": "2001-千与千寻",
+      "english": "Spirited Away",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/2001 千与千X.【日语】.mp4"
+      ],
+      "imdb_id": "tt0245429",
+      "tmdb_id": 129
+    },
+    {
+      "chinese": "2011-追逐繁星的孩子",
+      "english": "Children Who Chase Lost Voices",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt1839494",
+      "tmdb_id": 79707
+    },
+    {
+      "chinese": "1991-岁月的童话",
+      "english": "Only Yesterday",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/1991岁月的童话(日语).mp4"
+      ],
+      "imdb_id": "tt0102587",
+      "tmdb_id": 15080
+    },
+    {
+      "chinese": "1988-龙猫",
+      "english": "My Neighbor Totoro",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/1988龙猫(日语).mp4"
+      ],
+      "imdb_id": "tt0096283",
+      "tmdb_id": 8392
+    },
+    {
+      "chinese": "1988-萤火虫之墓",
+      "english": "Grave of the Fireflies",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/1988萤火虫之墓(日语).mp41"
+      ],
+      "imdb_id": "tt0491652",
+      "tmdb_id": 76826
+    },
+    {
+      "chinese": "1993-听到涛声",
+      "english": "Ocean Waves",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/国日双语【默认日语】.mkv"
+      ],
+      "imdb_id": "tt0108432",
+      "tmdb_id": 21057
+    },
+    {
+      "chinese": "2008-《悬崖上的金鱼姬》《崖上的波妞》",
+      "english": "Ponyo",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/2008悬崖 日语中字.mp41"
+      ],
+      "imdb_id": "tt0876563",
+      "tmdb_id": 12429
+    },
+    {
+      "chinese": "1989-魔女宅急便",
+      "english": "Kiki's Delivery Service",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/1989魔女宅急便(日语).mp41"
+      ],
+      "imdb_id": "tt0097814",
+      "tmdb_id": 16859
+    },
+    {
+      "chinese": "2013-梦与狂想的王国",
+      "english": "The Kingdom of Dreams and Madness",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/2013-梦与狂想的王国.mkv1"
+      ],
+      "imdb_id": "tt3204392",
+      "tmdb_id": 252511
+    },
+    {
+      "chinese": "2013-某人的目光",
+      "english": "Someone's Gaze",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/某人的目光.2013.中日双语.BluRay.1080P.mp4"
+      ],
+      "imdb_id": "tt3300814",
+      "tmdb_id": 222715
+    },
+    {
+      "chinese": "1992-飞天红猪侠",
+      "english": "Porco Rosso",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/1992飞天红猪侠(日语).mp4"
+      ],
+      "imdb_id": "tt0104652",
+      "tmdb_id": 11621
+    },
+    {
+      "chinese": "2002-星之声",
+      "english": "Voices of a Distant Star",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt0370754",
+      "tmdb_id": 37910
+    },
+    {
+      "chinese": "2013-言叶之庭",
+      "english": "The Garden of Words",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/言YZ庭1080P.mp4"
+      ],
+      "imdb_id": "tt2591814",
+      "tmdb_id": 198375
+    },
+    {
+      "chinese": "2006-地海战记",
+      "english": "Tales from Earthsea",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/2006地海战记(日语).mp41"
+      ],
+      "imdb_id": "tt0495596",
+      "tmdb_id": 37933
+    },
+    {
+      "chinese": "2007-秒速五厘米",
+      "english": "5 Centimeters per Second",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt0983213",
+      "tmdb_id": 38142
+    },
+    {
+      "chinese": "2002-吉卜力工作室特別短片合辑",
+      "english": "Ghiblies",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/2002-吉卜力工作室特別短片合辑.mkv"
+      ],
+      "imdb_id": "tt0893523",
+      "tmdb_id": 222471
+    },
+    {
+      "chinese": "2016-你的名字",
+      "english": "Your Name.",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/2016-你的名字.mp4"
+      ],
+      "imdb_id": "tt5311514",
+      "tmdb_id": 372058
+    },
+    {
+      "chinese": "2004-哈尔移动城堡",
+      "english": "Howl's Moving Castle",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/2004-哈尔移动城堡【日语】.mkv1"
+      ],
+      "imdb_id": "tt0347149",
+      "tmdb_id": 4935
+    },
+    {
+      "chinese": "1994-百变狸猫",
+      "english": "Pom Poko",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/1994百变狸猫BD国日粤3语中字.mkv1"
+      ],
+      "imdb_id": "tt0110008",
+      "tmdb_id": 15283
+    },
+    {
+      "chinese": "1997-幽灵公主",
+      "english": "Princess Mononoke",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/1997幽灵公主(日语).mp41"
+      ],
+      "imdb_id": "tt0119698",
+      "tmdb_id": 128
+    },
+    {
+      "chinese": "2014-记忆中的玛妮",
+      "english": "When Marnie Was There",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/2014-记忆中的玛妮.mp41"
+      ],
+      "imdb_id": "tt3398268",
+      "tmdb_id": 242828
+    },
+    {
+      "chinese": "2004-云的彼端,约定的地方",
+      "english": "The Place Promised in Our Early Days",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能)).mkv"
+      ],
+      "imdb_id": "tt0381348",
+      "tmdb_id": 12924
+    },
+    {
+      "chinese": "1984-风之谷",
+      "english": "Nausicaä of the Valley of the Wind",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/1984风之谷(日语).mp4"
+      ],
+      "imdb_id": "tt0087544",
+      "tmdb_id": 81
+    },
+    {
+      "chinese": "1979-鲁邦三世 卡里奥斯特罗城",
+      "english": "Lupin the Third: The Castle of Cagliostro",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/1979鲁邦三世:卡里奥斯特罗城(日语).mp4"
+      ],
+      "imdb_id": "tt0079833",
+      "tmdb_id": 15371
+    },
+    {
+      "chinese": "2013-辉夜姬物语",
+      "english": "The Tale of The Princess Kaguya",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/辉夜姬物语.mp41"
+      ],
+      "imdb_id": "tt2576852",
+      "tmdb_id": 149871
+    },
+    {
+      "chinese": "1986-天空之城",
+      "english": "Castle in the Sky",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/1986-天空之城【日语】.mp41"
+      ],
+      "imdb_id": "tt0092067",
+      "tmdb_id": 10515
+    },
+    {
+      "chinese": "2002-猫的报恩",
+      "english": "The Cat Returns",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/2002猫的报恩(日语).mp4"
+      ],
+      "imdb_id": "tt0347618",
+      "tmdb_id": 15370
+    },
+    {
+      "chinese": "1999-我的邻居山田君",
+      "english": "My Neighbors the Yamadas",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/1999我的邻居山田君(日语).mp4"
+      ],
+      "imdb_id": "tt0206013",
+      "tmdb_id": 16198
+    }
+  ],
+  "unmatched": [
+    {
+      "chinese": "1999-她与她的猫",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "reason": "No English match"
+    },
+    {
+      "chinese": "2014-十字路口【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/十字路口.CrossRoad.2014.中日双语.BluRay.1080P.mp4"
+      ],
+      "reason": "No English match"
+    },
+    {
+      "chinese": "2007-猫的集会【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/猫的集会.2007.中日双语.BluRay.1080P.mp4"
+      ],
+      "reason": "No English match"
+    },
+    {
+      "chinese": "2003-笑颜【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/笑颜.2003.中日双语.mp4"
+      ],
+      "reason": "No English match"
+    }
+  ]
+}

+ 712 - 0
ghibli_jellyfin_ready (original dir info).json

@@ -0,0 +1,712 @@
+{
+  "matched": [
+    {
+      "chinese": "2013-起风了",
+      "english": "The Wind Rises",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/2013-起风了【日语】.mp4"
+      ],
+      "imdb_id": "tt2013293",
+      "tmdb_id": 149870,
+      "jellyfin_title": "The.Wind.Rises",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/2013-起风了【日语】.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/The.Wind.Rises.2013.[tmdbid-149870].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1995-侧耳倾听",
+      "english": "Whisper of the Heart",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/1995侧耳倾听(日语).mp4"
+      ],
+      "imdb_id": "tt0113824",
+      "tmdb_id": 37797,
+      "jellyfin_title": "Whisper.of.the.Heart",
+      "jellyfin_year": "1995",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/1995侧耳倾听(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/Whisper.of.the.Heart.1995.[tmdbid-37797].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2006-穿越时空的少女",
+      "english": "Time Traveller: The Girl Who Leapt Through Time",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/2006-C越時空的少女【日语】.mkv1"
+      ],
+      "imdb_id": "tt1614408",
+      "tmdb_id": 54770,
+      "jellyfin_title": "Time.Traveller.The.Girl.Who.Leapt.Through.Time",
+      "jellyfin_year": "2006",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/2006-C越時空的少女【日语】.mkv1",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2019-天气之子",
+      "english": "Weathering with You",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/天气之子.原盘中字.mp4"
+      ],
+      "imdb_id": "tt9426210",
+      "tmdb_id": 568160,
+      "jellyfin_title": "Weathering.with.You",
+      "jellyfin_year": "2019",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/天气之子.原盘中字.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/Weathering.with.You.2019.[tmdbid-568160].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2016-红海龟",
+      "english": "The Red Turtle",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/2016-红海龟.mkv"
+      ],
+      "imdb_id": "tt3666024",
+      "tmdb_id": 337703,
+      "jellyfin_title": "The.Red.Turtle",
+      "jellyfin_year": "2016",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/2016-红海龟.mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/The.Red.Turtle.2016.[tmdbid-337703].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2011-虞美人盛开的山坡",
+      "english": "From Up on Poppy Hill",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/2011来自虞美人之坡【日语】.mp4"
+      ],
+      "imdb_id": "tt1798188",
+      "tmdb_id": 83389,
+      "jellyfin_title": "From.Up.on.Poppy.Hill",
+      "jellyfin_year": "2011",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/2011来自虞美人之坡【日语】.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/From.Up.on.Poppy.Hill.2011.[tmdbid-83389].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2010-借东西的小矮人亚莉亚蒂",
+      "english": "The Secret World of Arrietty",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/2010借东西的小人阿莉埃蒂(日语).mp4"
+      ],
+      "imdb_id": "tt1568921",
+      "tmdb_id": 51739,
+      "jellyfin_title": "The.Secret.World.of.Arrietty",
+      "jellyfin_year": "2010",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/2010借东西的小人阿莉埃蒂(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/The.Secret.World.of.Arrietty.2010.[tmdbid-51739].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2001-千与千寻",
+      "english": "Spirited Away",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/2001 千与千X.【日语】.mp4"
+      ],
+      "imdb_id": "tt0245429",
+      "tmdb_id": 129,
+      "jellyfin_title": "Spirited.Away",
+      "jellyfin_year": "2001",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/2001 千与千X.【日语】.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/Spirited.Away.2001.[tmdbid-129].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2011-追逐繁星的孩子",
+      "english": "Children Who Chase Lost Voices",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt1839494",
+      "tmdb_id": 79707,
+      "jellyfin_title": "Children.Who.Chase.Lost.Voices",
+      "jellyfin_year": "2011",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "1991-岁月的童话",
+      "english": "Only Yesterday",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/1991岁月的童话(日语).mp4"
+      ],
+      "imdb_id": "tt0102587",
+      "tmdb_id": 15080,
+      "jellyfin_title": "Only.Yesterday",
+      "jellyfin_year": "1991",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/1991岁月的童话(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/Only.Yesterday.1991.[tmdbid-15080].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1988-龙猫",
+      "english": "My Neighbor Totoro",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/1988龙猫(日语).mp4"
+      ],
+      "imdb_id": "tt0096283",
+      "tmdb_id": 8392,
+      "jellyfin_title": "My.Neighbor.Totoro",
+      "jellyfin_year": "1988",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/1988龙猫(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/My.Neighbor.Totoro.1988.[tmdbid-8392].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1988-萤火虫之墓",
+      "english": "Grave of the Fireflies",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/1988萤火虫之墓(日语).mp41"
+      ],
+      "imdb_id": "tt0491652",
+      "tmdb_id": 76826,
+      "jellyfin_title": "Grave.of.the.Fireflies",
+      "jellyfin_year": "1988",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/1988萤火虫之墓(日语).mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/Grave.of.the.Fireflies.1988.[tmdbid-76826].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1993-听到涛声",
+      "english": "Ocean Waves",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/国日双语【默认日语】.mkv"
+      ],
+      "imdb_id": "tt0108432",
+      "tmdb_id": 21057,
+      "jellyfin_title": "Ocean.Waves",
+      "jellyfin_year": "1993",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/国日双语【默认日语】.mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/Ocean.Waves.1993.[tmdbid-21057].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2008-《悬崖上的金鱼姬》《崖上的波妞》",
+      "english": "Ponyo",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/2008悬崖 日语中字.mp41"
+      ],
+      "imdb_id": "tt0876563",
+      "tmdb_id": 12429,
+      "jellyfin_title": "Ponyo",
+      "jellyfin_year": "2008",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/2008悬崖 日语中字.mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/Ponyo.2008.[tmdbid-12429].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1989-魔女宅急便",
+      "english": "Kiki's Delivery Service",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/1989魔女宅急便(日语).mp41"
+      ],
+      "imdb_id": "tt0097814",
+      "tmdb_id": 16859,
+      "jellyfin_title": "Kiki's.Delivery.Service",
+      "jellyfin_year": "1989",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/1989魔女宅急便(日语).mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/Kiki's.Delivery.Service.1989.[tmdbid-16859].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2013-梦与狂想的王国",
+      "english": "The Kingdom of Dreams and Madness",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/2013-梦与狂想的王国.mkv1"
+      ],
+      "imdb_id": "tt3204392",
+      "tmdb_id": 252511,
+      "jellyfin_title": "The.Kingdom.of.Dreams.and.Madness",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/2013-梦与狂想的王国.mkv1",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2013-某人的目光",
+      "english": "Someone's Gaze",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/某人的目光.2013.中日双语.BluRay.1080P.mp4"
+      ],
+      "imdb_id": "tt3300814",
+      "tmdb_id": 222715,
+      "jellyfin_title": "Someone's.Gaze",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/某人的目光.2013.中日双语.BluRay.1080P.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/Someone's.Gaze.2013.[tmdbid-222715].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1992-飞天红猪侠",
+      "english": "Porco Rosso",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/1992飞天红猪侠(日语).mp4"
+      ],
+      "imdb_id": "tt0104652",
+      "tmdb_id": 11621,
+      "jellyfin_title": "Porco.Rosso",
+      "jellyfin_year": "1992",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/1992飞天红猪侠(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/Porco.Rosso.1992.[tmdbid-11621].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2002-星之声",
+      "english": "Voices of a Distant Star",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt0370754",
+      "tmdb_id": 37910,
+      "jellyfin_title": "Voices.of.a.Distant.Star",
+      "jellyfin_year": "2002",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/Voices.of.a.Distant.Star.2002.[tmdbid-37910].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2013-言叶之庭",
+      "english": "The Garden of Words",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/言YZ庭1080P.mp4"
+      ],
+      "imdb_id": "tt2591814",
+      "tmdb_id": 198375,
+      "jellyfin_title": "The.Garden.of.Words",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/言YZ庭1080P.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/The.Garden.of.Words.2013.[tmdbid-198375].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2006-地海战记",
+      "english": "Tales from Earthsea",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/2006地海战记(日语).mp41"
+      ],
+      "imdb_id": "tt0495596",
+      "tmdb_id": 37933,
+      "jellyfin_title": "Tales.from.Earthsea",
+      "jellyfin_year": "2006",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/2006地海战记(日语).mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/Tales.from.Earthsea.2006.[tmdbid-37933].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2007-秒速五厘米",
+      "english": "5 Centimeters per Second",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt0983213",
+      "tmdb_id": 38142,
+      "jellyfin_title": "5.Centimeters.per.Second",
+      "jellyfin_year": "2007",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/5.Centimeters.per.Second.2007.[tmdbid-38142].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2002-吉卜力工作室特別短片合辑",
+      "english": "Ghiblies",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/2002-吉卜力工作室特別短片合辑.mkv"
+      ],
+      "imdb_id": "tt0893523",
+      "tmdb_id": 222471,
+      "jellyfin_title": "Ghiblies",
+      "jellyfin_year": "2002",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/2002-吉卜力工作室特別短片合辑.mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/Ghiblies.2002.[tmdbid-222471].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2016-你的名字",
+      "english": "Your Name.",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/2016-你的名字.mp4"
+      ],
+      "imdb_id": "tt5311514",
+      "tmdb_id": 372058,
+      "jellyfin_title": "Your.Name",
+      "jellyfin_year": "2016",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/2016-你的名字.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/Your.Name.2016.[tmdbid-372058].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2004-哈尔移动城堡",
+      "english": "Howl's Moving Castle",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/2004-哈尔移动城堡【日语】.mkv1"
+      ],
+      "imdb_id": "tt0347149",
+      "tmdb_id": 4935,
+      "jellyfin_title": "Howl's.Moving.Castle",
+      "jellyfin_year": "2004",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/2004-哈尔移动城堡【日语】.mkv1",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/Howl's.Moving.Castle.2004.[tmdbid-4935].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "1994-百变狸猫",
+      "english": "Pom Poko",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/1994百变狸猫BD国日粤3语中字.mkv1"
+      ],
+      "imdb_id": "tt0110008",
+      "tmdb_id": 15283,
+      "jellyfin_title": "Pom.Poko",
+      "jellyfin_year": "1994",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/1994百变狸猫BD国日粤3语中字.mkv1",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/Pom.Poko.1994.[tmdbid-15283].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "1997-幽灵公主",
+      "english": "Princess Mononoke",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/1997幽灵公主(日语).mp41"
+      ],
+      "imdb_id": "tt0119698",
+      "tmdb_id": 128,
+      "jellyfin_title": "Princess.Mononoke",
+      "jellyfin_year": "1997",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/1997幽灵公主(日语).mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/Princess.Mononoke.1997.[tmdbid-128].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2014-记忆中的玛妮",
+      "english": "When Marnie Was There",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/2014-记忆中的玛妮.mp41"
+      ],
+      "imdb_id": "tt3398268",
+      "tmdb_id": 242828,
+      "jellyfin_title": "When.Marnie.Was.There",
+      "jellyfin_year": "2014",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/2014-记忆中的玛妮.mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/When.Marnie.Was.There.2014.[tmdbid-242828].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2004-云的彼端,约定的地方",
+      "english": "The Place Promised in Our Early Days",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能)).mkv"
+      ],
+      "imdb_id": "tt0381348",
+      "tmdb_id": 12924,
+      "jellyfin_title": "The.Place.Promised.in.Our.Early.Days",
+      "jellyfin_year": "2004",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能)).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "1984-风之谷",
+      "english": "Nausicaä of the Valley of the Wind",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/1984风之谷(日语).mp4"
+      ],
+      "imdb_id": "tt0087544",
+      "tmdb_id": 81,
+      "jellyfin_title": "Nausicaä.of.the.Valley.of.the.Wind",
+      "jellyfin_year": "1984",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/1984风之谷(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1979-鲁邦三世 卡里奥斯特罗城",
+      "english": "Lupin the Third: The Castle of Cagliostro",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/1979鲁邦三世:卡里奥斯特罗城(日语).mp4"
+      ],
+      "imdb_id": "tt0079833",
+      "tmdb_id": 15371,
+      "jellyfin_title": "Lupin.the.Third.The.Castle.of.Cagliostro",
+      "jellyfin_year": "1979",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/1979鲁邦三世:卡里奥斯特罗城(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2013-辉夜姬物语",
+      "english": "The Tale of The Princess Kaguya",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/辉夜姬物语.mp41"
+      ],
+      "imdb_id": "tt2576852",
+      "tmdb_id": 149871,
+      "jellyfin_title": "The.Tale.of.The.Princess.Kaguya",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/辉夜姬物语.mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1986-天空之城",
+      "english": "Castle in the Sky",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/1986-天空之城【日语】.mp41"
+      ],
+      "imdb_id": "tt0092067",
+      "tmdb_id": 10515,
+      "jellyfin_title": "Castle.in.the.Sky",
+      "jellyfin_year": "1986",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/1986-天空之城【日语】.mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/Castle.in.the.Sky.1986.[tmdbid-10515].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2002-猫的报恩",
+      "english": "The Cat Returns",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/2002猫的报恩(日语).mp4"
+      ],
+      "imdb_id": "tt0347618",
+      "tmdb_id": 15370,
+      "jellyfin_title": "The.Cat.Returns",
+      "jellyfin_year": "2002",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/2002猫的报恩(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/The.Cat.Returns.2002.[tmdbid-15370].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1999-我的邻居山田君",
+      "english": "My Neighbors the Yamadas",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/1999我的邻居山田君(日语).mp4"
+      ],
+      "imdb_id": "tt0206013",
+      "tmdb_id": 16198,
+      "jellyfin_title": "My.Neighbors.the.Yamadas",
+      "jellyfin_year": "1999",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/1999我的邻居山田君(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/My.Neighbors.the.Yamadas.1999.[tmdbid-16198].mp4"
+        }
+      ]
+    }
+  ],
+  "unmatched": [
+    {
+      "chinese": "1999-她与她的猫",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "reason": "No English match",
+      "jellyfin_title": "1999-她与她的猫",
+      "jellyfin_year": "1999",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/1999-她与她的猫.1999.mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2014-十字路口【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/十字路口.CrossRoad.2014.中日双语.BluRay.1080P.mp4"
+      ],
+      "reason": "No English match",
+      "jellyfin_title": "2014-十字路口短篇集",
+      "jellyfin_year": "2014",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/十字路口.CrossRoad.2014.中日双语.BluRay.1080P.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/2014-十字路口短篇集.2014.mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2007-猫的集会【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/猫的集会.2007.中日双语.BluRay.1080P.mp4"
+      ],
+      "reason": "No English match",
+      "jellyfin_title": "2007-猫的集会短篇集",
+      "jellyfin_year": "2007",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/猫的集会.2007.中日双语.BluRay.1080P.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/2007-猫的集会短篇集.2007.mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2003-笑颜【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/笑颜.2003.中日双语.mp4"
+      ],
+      "reason": "No English match",
+      "jellyfin_title": "2003-笑颜短篇集",
+      "jellyfin_year": "2003",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/笑颜.2003.中日双语.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/2003-笑颜短篇集.2003.mp4"
+        }
+      ]
+    }
+  ]
+}

+ 712 - 0
ghibli_jellyfin_ready.json

@@ -0,0 +1,712 @@
+{
+  "matched": [
+    {
+      "chinese": "2013-起风了",
+      "english": "The Wind Rises",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/2013-起风了【日语】.mp4"
+      ],
+      "imdb_id": "tt2013293",
+      "tmdb_id": 149870,
+      "jellyfin_title": "The.Wind.Rises",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/2013-起风了【日语】.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/The.Wind.Rises.2013.[tmdbid-149870].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1995-侧耳倾听",
+      "english": "Whisper of the Heart",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/1995侧耳倾听(日语).mp4"
+      ],
+      "imdb_id": "tt0113824",
+      "tmdb_id": 37797,
+      "jellyfin_title": "Whisper.of.the.Heart",
+      "jellyfin_year": "1995",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/1995侧耳倾听(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/Whisper.of.the.Heart.1995.[tmdbid-37797].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2006-穿越时空的少女",
+      "english": "Time Traveller: The Girl Who Leapt Through Time",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/2006-C越時空的少女【日语】.mkv1"
+      ],
+      "imdb_id": "tt1614408",
+      "tmdb_id": 54770,
+      "jellyfin_title": "Time.Traveller.The.Girl.Who.Leapt.Through.Time",
+      "jellyfin_year": "2006",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/2006-C越時空的少女【日语】.mkv1",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2019-天气之子",
+      "english": "Weathering with You",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/天气之子.原盘中字.mp4"
+      ],
+      "imdb_id": "tt9426210",
+      "tmdb_id": 568160,
+      "jellyfin_title": "Weathering.with.You",
+      "jellyfin_year": "2019",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/天气之子.原盘中字.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/Weathering.with.You.2019.[tmdbid-568160].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2016-红海龟",
+      "english": "The Red Turtle",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/2016-红海龟.mkv"
+      ],
+      "imdb_id": "tt3666024",
+      "tmdb_id": 337703,
+      "jellyfin_title": "The.Red.Turtle",
+      "jellyfin_year": "2016",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/2016-红海龟.mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/The.Red.Turtle.2016.[tmdbid-337703].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2011-虞美人盛开的山坡",
+      "english": "From Up on Poppy Hill",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/2011来自虞美人之坡【日语】.mp4"
+      ],
+      "imdb_id": "tt1798188",
+      "tmdb_id": 83389,
+      "jellyfin_title": "From.Up.on.Poppy.Hill",
+      "jellyfin_year": "2011",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/2011来自虞美人之坡【日语】.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/From.Up.on.Poppy.Hill.2011.[tmdbid-83389].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2010-借东西的小矮人亚莉亚蒂",
+      "english": "The Secret World of Arrietty",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/2010借东西的小人阿莉埃蒂(日语).mp4"
+      ],
+      "imdb_id": "tt1568921",
+      "tmdb_id": 51739,
+      "jellyfin_title": "The.Secret.World.of.Arrietty",
+      "jellyfin_year": "2010",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/2010借东西的小人阿莉埃蒂(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/The.Secret.World.of.Arrietty.2010.[tmdbid-51739].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2001-千与千寻",
+      "english": "Spirited Away",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/2001 千与千X.【日语】.mp4"
+      ],
+      "imdb_id": "tt0245429",
+      "tmdb_id": 129,
+      "jellyfin_title": "Spirited.Away",
+      "jellyfin_year": "2001",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/2001 千与千X.【日语】.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/Spirited.Away.2001.[tmdbid-129].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2011-追逐繁星的孩子",
+      "english": "Children Who Chase Lost Voices",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt1839494",
+      "tmdb_id": 79707,
+      "jellyfin_title": "Children.Who.Chase.Lost.Voices",
+      "jellyfin_year": "2011",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "1991-岁月的童话",
+      "english": "Only Yesterday",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/1991岁月的童话(日语).mp4"
+      ],
+      "imdb_id": "tt0102587",
+      "tmdb_id": 15080,
+      "jellyfin_title": "Only.Yesterday",
+      "jellyfin_year": "1991",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/1991岁月的童话(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/Only.Yesterday.1991.[tmdbid-15080].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1988-龙猫",
+      "english": "My Neighbor Totoro",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/1988龙猫(日语).mp4"
+      ],
+      "imdb_id": "tt0096283",
+      "tmdb_id": 8392,
+      "jellyfin_title": "My.Neighbor.Totoro",
+      "jellyfin_year": "1988",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/1988龙猫(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/My.Neighbor.Totoro.1988.[tmdbid-8392].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1988-萤火虫之墓",
+      "english": "Grave of the Fireflies",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/1988萤火虫之墓(日语).mp41"
+      ],
+      "imdb_id": "tt0491652",
+      "tmdb_id": 76826,
+      "jellyfin_title": "Grave.of.the.Fireflies",
+      "jellyfin_year": "1988",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/1988萤火虫之墓(日语).mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/Grave.of.the.Fireflies.1988.[tmdbid-76826].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1993-听到涛声",
+      "english": "Ocean Waves",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/国日双语【默认日语】.mkv"
+      ],
+      "imdb_id": "tt0108432",
+      "tmdb_id": 21057,
+      "jellyfin_title": "Ocean.Waves",
+      "jellyfin_year": "1993",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/国日双语【默认日语】.mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/Ocean.Waves.1993.[tmdbid-21057].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2008-《悬崖上的金鱼姬》《崖上的波妞》",
+      "english": "Ponyo",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/2008悬崖 日语中字.mp41"
+      ],
+      "imdb_id": "tt0876563",
+      "tmdb_id": 12429,
+      "jellyfin_title": "Ponyo",
+      "jellyfin_year": "2008",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/2008悬崖 日语中字.mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/Ponyo.2008.[tmdbid-12429].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1989-魔女宅急便",
+      "english": "Kiki's Delivery Service",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/1989魔女宅急便(日语).mp41"
+      ],
+      "imdb_id": "tt0097814",
+      "tmdb_id": 16859,
+      "jellyfin_title": "Kiki's.Delivery.Service",
+      "jellyfin_year": "1989",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/1989魔女宅急便(日语).mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/Kiki's.Delivery.Service.1989.[tmdbid-16859].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2013-梦与狂想的王国",
+      "english": "The Kingdom of Dreams and Madness",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/2013-梦与狂想的王国.mkv1"
+      ],
+      "imdb_id": "tt3204392",
+      "tmdb_id": 252511,
+      "jellyfin_title": "The.Kingdom.of.Dreams.and.Madness",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/2013-梦与狂想的王国.mkv1",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2013-某人的目光",
+      "english": "Someone's Gaze",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/某人的目光.2013.中日双语.BluRay.1080P.mp4"
+      ],
+      "imdb_id": "tt3300814",
+      "tmdb_id": 222715,
+      "jellyfin_title": "Someone's.Gaze",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/某人的目光.2013.中日双语.BluRay.1080P.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/Someone's.Gaze.2013.[tmdbid-222715].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1992-飞天红猪侠",
+      "english": "Porco Rosso",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/1992飞天红猪侠(日语).mp4"
+      ],
+      "imdb_id": "tt0104652",
+      "tmdb_id": 11621,
+      "jellyfin_title": "Porco.Rosso",
+      "jellyfin_year": "1992",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/1992飞天红猪侠(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/Porco.Rosso.1992.[tmdbid-11621].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2002-星之声",
+      "english": "Voices of a Distant Star",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt0370754",
+      "tmdb_id": 37910,
+      "jellyfin_title": "Voices.of.a.Distant.Star",
+      "jellyfin_year": "2002",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/Voices.of.a.Distant.Star.2002.[tmdbid-37910].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2013-言叶之庭",
+      "english": "The Garden of Words",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/言YZ庭1080P.mp4"
+      ],
+      "imdb_id": "tt2591814",
+      "tmdb_id": 198375,
+      "jellyfin_title": "The.Garden.of.Words",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/言YZ庭1080P.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/The.Garden.of.Words.2013.[tmdbid-198375].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2006-地海战记",
+      "english": "Tales from Earthsea",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/2006地海战记(日语).mp41"
+      ],
+      "imdb_id": "tt0495596",
+      "tmdb_id": 37933,
+      "jellyfin_title": "Tales.from.Earthsea",
+      "jellyfin_year": "2006",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/2006地海战记(日语).mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/Tales.from.Earthsea.2006.[tmdbid-37933].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2007-秒速五厘米",
+      "english": "5 Centimeters per Second",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "imdb_id": "tt0983213",
+      "tmdb_id": 38142,
+      "jellyfin_title": "5.Centimeters.per.Second",
+      "jellyfin_year": "2007",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/5.Centimeters.per.Second.2007.[tmdbid-38142].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2002-吉卜力工作室特別短片合辑",
+      "english": "Ghiblies",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/2002-吉卜力工作室特別短片合辑.mkv"
+      ],
+      "imdb_id": "tt0893523",
+      "tmdb_id": 222471,
+      "jellyfin_title": "Ghiblies",
+      "jellyfin_year": "2002",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/2002-吉卜力工作室特別短片合辑.mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/Ghiblies.2002.[tmdbid-222471].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2016-你的名字",
+      "english": "Your Name.",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/2016-你的名字.mp4"
+      ],
+      "imdb_id": "tt5311514",
+      "tmdb_id": 372058,
+      "jellyfin_title": "Your.Name",
+      "jellyfin_year": "2016",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/2016-你的名字.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/Your.Name.2016.[tmdbid-372058].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2004-哈尔移动城堡",
+      "english": "Howl's Moving Castle",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/2004-哈尔移动城堡【日语】.mkv1"
+      ],
+      "imdb_id": "tt0347149",
+      "tmdb_id": 4935,
+      "jellyfin_title": "Howl's.Moving.Castle",
+      "jellyfin_year": "2004",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/2004-哈尔移动城堡【日语】.mkv1",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/Howl's.Moving.Castle.2004.[tmdbid-4935].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "1994-百变狸猫",
+      "english": "Pom Poko",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/1994百变狸猫BD国日粤3语中字.mkv1"
+      ],
+      "imdb_id": "tt0110008",
+      "tmdb_id": 15283,
+      "jellyfin_title": "Pom.Poko",
+      "jellyfin_year": "1994",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/1994百变狸猫BD国日粤3语中字.mkv1",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/Pom.Poko.1994.[tmdbid-15283].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "1997-幽灵公主",
+      "english": "Princess Mononoke",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/1997幽灵公主(日语).mp41"
+      ],
+      "imdb_id": "tt0119698",
+      "tmdb_id": 128,
+      "jellyfin_title": "Princess.Mononoke",
+      "jellyfin_year": "1997",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/1997幽灵公主(日语).mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/Princess.Mononoke.1997.[tmdbid-128].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2014-记忆中的玛妮",
+      "english": "When Marnie Was There",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/2014-记忆中的玛妮.mp41"
+      ],
+      "imdb_id": "tt3398268",
+      "tmdb_id": 242828,
+      "jellyfin_title": "When.Marnie.Was.There",
+      "jellyfin_year": "2014",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/2014-记忆中的玛妮.mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/When.Marnie.Was.There.2014.[tmdbid-242828].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2004-云的彼端,约定的地方",
+      "english": "The Place Promised in Our Early Days",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能)).mkv"
+      ],
+      "imdb_id": "tt0381348",
+      "tmdb_id": 12924,
+      "jellyfin_title": "The.Place.Promised.in.Our.Early.Days",
+      "jellyfin_year": "2004",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能)).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924].mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "1984-风之谷",
+      "english": "Nausicaä of the Valley of the Wind",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/1984风之谷(日语).mp4"
+      ],
+      "imdb_id": "tt0087544",
+      "tmdb_id": 81,
+      "jellyfin_title": "Nausicaä.of.the.Valley.of.the.Wind",
+      "jellyfin_year": "1984",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/1984风之谷(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1979-鲁邦三世 卡里奥斯特罗城",
+      "english": "Lupin the Third: The Castle of Cagliostro",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/1979鲁邦三世:卡里奥斯特罗城(日语).mp4"
+      ],
+      "imdb_id": "tt0079833",
+      "tmdb_id": 15371,
+      "jellyfin_title": "Lupin.the.Third.The.Castle.of.Cagliostro",
+      "jellyfin_year": "1979",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/1979鲁邦三世:卡里奥斯特罗城(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2013-辉夜姬物语",
+      "english": "The Tale of The Princess Kaguya",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/辉夜姬物语.mp41"
+      ],
+      "imdb_id": "tt2576852",
+      "tmdb_id": 149871,
+      "jellyfin_title": "The.Tale.of.The.Princess.Kaguya",
+      "jellyfin_year": "2013",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/辉夜姬物语.mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1986-天空之城",
+      "english": "Castle in the Sky",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/1986-天空之城【日语】.mp41"
+      ],
+      "imdb_id": "tt0092067",
+      "tmdb_id": 10515,
+      "jellyfin_title": "Castle.in.the.Sky",
+      "jellyfin_year": "1986",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/1986-天空之城【日语】.mp41",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/Castle.in.the.Sky.1986.[tmdbid-10515].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2002-猫的报恩",
+      "english": "The Cat Returns",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/2002猫的报恩(日语).mp4"
+      ],
+      "imdb_id": "tt0347618",
+      "tmdb_id": 15370,
+      "jellyfin_title": "The.Cat.Returns",
+      "jellyfin_year": "2002",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/2002猫的报恩(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/The.Cat.Returns.2002.[tmdbid-15370].mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "1999-我的邻居山田君",
+      "english": "My Neighbors the Yamadas",
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/1999我的邻居山田君(日语).mp4"
+      ],
+      "imdb_id": "tt0206013",
+      "tmdb_id": 16198,
+      "jellyfin_title": "My.Neighbors.the.Yamadas",
+      "jellyfin_year": "1999",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/1999我的邻居山田君(日语).mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/My.Neighbors.the.Yamadas.1999.[tmdbid-16198].mp4"
+        }
+      ]
+    }
+  ],
+  "unmatched": [
+    {
+      "chinese": "1999-她与她的猫",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv"
+      ],
+      "reason": "No English match",
+      "jellyfin_title": "1999-她与她的猫",
+      "jellyfin_year": "1999",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/1999-她与她的猫.1999.mkv"
+        }
+      ]
+    },
+    {
+      "chinese": "2014-十字路口【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/十字路口.CrossRoad.2014.中日双语.BluRay.1080P.mp4"
+      ],
+      "reason": "No English match",
+      "jellyfin_title": "2014-十字路口短篇集",
+      "jellyfin_year": "2014",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/十字路口.CrossRoad.2014.中日双语.BluRay.1080P.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/2014-十字路口短篇集.2014.mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2007-猫的集会【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/猫的集会.2007.中日双语.BluRay.1080P.mp4"
+      ],
+      "reason": "No English match",
+      "jellyfin_title": "2007-猫的集会短篇集",
+      "jellyfin_year": "2007",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/猫的集会.2007.中日双语.BluRay.1080P.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/2007-猫的集会短篇集.2007.mp4"
+        }
+      ]
+    },
+    {
+      "chinese": "2003-笑颜【短篇集】",
+      "english": null,
+      "imdb_id": null,
+      "tmdb_id": null,
+      "path": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】",
+      "media_files": [
+        "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/笑颜.2003.中日双语.mp4"
+      ],
+      "reason": "No English match",
+      "jellyfin_title": "2003-笑颜短篇集",
+      "jellyfin_year": "2003",
+      "jellyfin_media_files": [
+        {
+          "original": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/笑颜.2003.中日双语.mp4",
+          "suggested": "/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/2003-笑颜短篇集.2003.mp4"
+        }
+      ]
+    }
+  ]
+}

+ 26 - 0
remove_symlinks.py

@@ -0,0 +1,26 @@
+import os
+import sys
+
+def remove_symlinks(root_dir, output_file="removed_symlinks.txt"):
+    removed = []
+    for dirpath, _, filenames in os.walk(root_dir):
+        for fname in filenames:
+            fpath = os.path.join(dirpath, fname)
+            try:
+                if os.path.islink(fpath):
+                    os.unlink(fpath)
+                    removed.append(fpath)
+            except Exception as e:
+                print(f"Error removing symlink {fpath}: {e}")
+    with open(output_file, "w", encoding="utf-8") as f:
+        for path in removed:
+            f.write(path + "\n")
+    print(f"Removed {len(removed)} symlinks. Results saved to {output_file}")
+
+if __name__ == "__main__":
+    if len(sys.argv) < 2:
+        print("Usage: python discard_media.py <directory> [output_file]")
+    else:
+        root = sys.argv[1]
+        out_file = sys.argv[2] if len(sys.argv) > 2 else "removed_symlinks.txt"
+        remove_symlinks(root, out_file)

+ 39 - 0
removed_symlinks.txt

@@ -0,0 +1,39 @@
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/When.Marnie.Was.There.2014.[tmdbid-242828]/When.Marnie.Was.There.2014.[tmdbid-242828].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Garden.of.Words.2013.[tmdbid-198375]/The.Garden.of.Words.2013.[tmdbid-198375].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Someone's.Gaze.2013.[tmdbid-222715]/Someone's.Gaze.2013.[tmdbid-222715].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Red.Turtle.2016.[tmdbid-337703]/The.Red.Turtle.2016.[tmdbid-337703].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Kiki's.Delivery.Service.1989.[tmdbid-16859]/Kiki's.Delivery.Service.1989.[tmdbid-16859].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511]/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Wind.Rises.2013.[tmdbid-149870]/The.Wind.Rises.2013.[tmdbid-149870].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924]/The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871]/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ghiblies.2002.[tmdbid-222471]/Ghiblies.2002.[tmdbid-222471].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Pom.Poko.1994.[tmdbid-15283]/Pom.Poko.1994.[tmdbid-15283].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Secret.World.of.Arrietty.2010.[tmdbid-51739]/The.Secret.World.of.Arrietty.2010.[tmdbid-51739].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Castle.in.the.Sky.1986.[tmdbid-10515]/Castle.in.the.Sky.1986.[tmdbid-10515].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/From.Up.on.Poppy.Hill.2011.[tmdbid-83389]/From.Up.on.Poppy.Hill.2011.[tmdbid-83389].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Porco.Rosso.1992.[tmdbid-11621]/Porco.Rosso.1992.[tmdbid-11621].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Princess.Mononoke.1997.[tmdbid-128]/Princess.Mononoke.1997.[tmdbid-128].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Grave.of.the.Fireflies.1988.[tmdbid-76826]/Grave.of.the.Fireflies.1988.[tmdbid-76826].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/2014-十字路口短篇集.2014/2014-十字路口短篇集.2014.mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Tales.from.Earthsea.2006.[tmdbid-37933]/Tales.from.Earthsea.2006.[tmdbid-37933].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Only.Yesterday.1991.[tmdbid-15080]/Only.Yesterday.1991.[tmdbid-15080].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371]/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ponyo.2008.[tmdbid-12429]/Ponyo.2008.[tmdbid-12429].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Weathering.with.You.2019.[tmdbid-568160]/Weathering.with.You.2019.[tmdbid-568160].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Howls.Moving.Castle.2004.[tmdbid-4935]/Howls.Moving.Castle.2004.[tmdbid-4935].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/2007-猫的集会短篇集.2007/2007-猫的集会短篇集.2007.mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Your.Name.2016.[tmdbid-372058]/Your.Name.2016.[tmdbid-372058].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/5.Centimeters.per.Second.2007.[tmdbid-38142]/5.Centimeters.per.Second.2007.[tmdbid-38142].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Spirited.Away.2001.[tmdbid-129]/Spirited.Away.2001.[tmdbid-129].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ocean.Waves.1993.[tmdbid-21057]/Ocean.Waves.1993.[tmdbid-21057].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/1999-她与她的猫.1999/1999-她与她的猫.1999.mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81]/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/My.Neighbor.Totoro.1988.[tmdbid-8392]/My.Neighbor.Totoro.1988.[tmdbid-8392].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770]/Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/My.Neighbors.the.Yamadas.1999.[tmdbid-16198]/My.Neighbors.the.Yamadas.1999.[tmdbid-16198].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Voices.of.a.Distant.Star.2002.[tmdbid-37910]/Voices.of.a.Distant.Star.2002.[tmdbid-37910].mkv
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Cat.Returns.2002.[tmdbid-15370]/The.Cat.Returns.2002.[tmdbid-15370].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Whisper.of.the.Heart.1995.[tmdbid-37797]/Whisper.of.the.Heart.1995.[tmdbid-37797].mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/2003-笑颜短篇集.2003/2003-笑颜短篇集.2003.mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707]/Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707].mkv

+ 3 - 0
small_media_files.txt

@@ -0,0 +1,3 @@
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media-gbt/downloads/complete/midv-042/苍 老 师 强 力 推 荐.mp4
+/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media-gbt/downloads/complete/waaa-140/苍 老 师 强 力 推 荐.mp4
+

+ 170 - 0
sync_dry_run.txt

@@ -0,0 +1,170 @@
+Found match for 'Howl's.Moving.Castle.2004.[tmdbid-4935]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/2004-哈尔移动城堡【日语】.mkv1.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Howl's.Moving.Castle.2004.[tmdbid-4935]/2004-哈尔移动城堡【日语】.mkv1.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/2004-哈尔移动城堡【国语】.mkv1 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Howl's.Moving.Castle.2004.[tmdbid-4935]/2004-哈尔移动城堡【国语】.mkv1
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-哈尔移动城堡/Howl's.Moving.Castle.2004.[tmdbid-4935].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Howl's.Moving.Castle.2004.[tmdbid-4935]/Howl's.Moving.Castle.2004.[tmdbid-4935].mkv
+Found match for 'When.Marnie.Was.There.2014.[tmdbid-242828]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/When.Marnie.Was.There.2014.[tmdbid-242828]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/2014-记忆中的玛妮.mp41.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/When.Marnie.Was.There.2014.[tmdbid-242828]/2014-记忆中的玛妮.mp41.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/When.Marnie.Was.There.2014.[tmdbid-242828].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/When.Marnie.Was.There.2014.[tmdbid-242828]/When.Marnie.Was.There.2014.[tmdbid-242828].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-记忆中的玛妮/多音轨版本,默认日语,外嵌字幕。如果无法自动加载字幕,请下载到本地,用迅雷播放器打开 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/When.Marnie.Was.There.2014.[tmdbid-242828]/多音轨版本,默认日语,外嵌字幕。如果无法自动加载字幕,请下载到本地,用迅雷播放器打开
+Found match for 'The.Garden.of.Words.2013.[tmdbid-198375]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/The.Garden.of.Words.2013.[tmdbid-198375].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Garden.of.Words.2013.[tmdbid-198375]/The.Garden.of.Words.2013.[tmdbid-198375].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-言叶之庭/言YZ庭1080P.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Garden.of.Words.2013.[tmdbid-198375]/言YZ庭1080P.mp4.bak
+Found match for 'Someone's.Gaze.2013.[tmdbid-222715]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/Someone's.Gaze.2013.[tmdbid-222715].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Someone's.Gaze.2013.[tmdbid-222715]/Someone's.Gaze.2013.[tmdbid-222715].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-某人的目光/某人的目光.2013.中日双语.BluRay.1080P.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Someone's.Gaze.2013.[tmdbid-222715]/某人的目光.2013.中日双语.BluRay.1080P.mp4.bak
+Found match for 'The.Red.Turtle.2016.[tmdbid-337703]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/The.Red.Turtle.2016.[tmdbid-337703].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Red.Turtle.2016.[tmdbid-337703]/The.Red.Turtle.2016.[tmdbid-337703].mkv
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/2016-红海龟.mkv.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Red.Turtle.2016.[tmdbid-337703]/2016-红海龟.mkv.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-红海龟/重命名 删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Red.Turtle.2016.[tmdbid-337703]/重命名 删除文件后缀名后面的数字1,即可播放
+Found match for 'Kiki's.Delivery.Service.1989.[tmdbid-16859]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/1989魔女宅急便(日语).mp41.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Kiki's.Delivery.Service.1989.[tmdbid-16859]/1989魔女宅急便(日语).mp41.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/1989魔女宅急便(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Kiki's.Delivery.Service.1989.[tmdbid-16859]/1989魔女宅急便(国语).mp41
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/Kiki's.Delivery.Service.1989.[tmdbid-16859].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Kiki's.Delivery.Service.1989.[tmdbid-16859]/Kiki's.Delivery.Service.1989.[tmdbid-16859].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1989-魔女宅急便/重命名 删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Kiki's.Delivery.Service.1989.[tmdbid-16859]/重命名 删除文件后缀名后面的数字1,即可播放
+Found match for 'The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511]/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511].mkv
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/多音轨版本,默认日语,外嵌字幕。如果无法自动加载字幕,请下载到本地,用迅雷播放器打开 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511]/多音轨版本,默认日语,外嵌字幕。如果无法自动加载字幕,请下载到本地,用迅雷播放器打开
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-梦与狂想的王国/2013-梦与狂想的王国.mkv1.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Kingdom.of.Dreams.and.Madness.2013.[tmdbid-252511]/2013-梦与狂想的王国.mkv1.bak
+Found match for 'The.Wind.Rises.2013.[tmdbid-149870]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Wind.Rises.2013.[tmdbid-149870]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/2013-起风了【日语】.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Wind.Rises.2013.[tmdbid-149870]/2013-起风了【日语】.mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/The.Wind.Rises.2013.[tmdbid-149870].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Wind.Rises.2013.[tmdbid-149870]/The.Wind.Rises.2013.[tmdbid-149870].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-起风了/2013-起风了【国语】.mkv1 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Wind.Rises.2013.[tmdbid-149870]/2013-起风了【国语】.mkv1
+Found match for 'The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/默认字幕版720P.mkv1 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924]/默认字幕版720P.mkv1
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924]/The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924].mkv
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2004-云的彼端,约定的地方/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能)).mkv.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Place.Promised.in.Our.Early.Days.2004.[tmdbid-12924]/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能)).mkv.bak
+Found match for 'The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/多音轨版本,默认日语,外嵌字幕。如果无法自动加载字幕,请下载到本地,用迅雷播放器打开 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871]/多音轨版本,默认日语,外嵌字幕。如果无法自动加载字幕,请下载到本地,用迅雷播放器打开
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871]/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2013-辉夜姬物语/辉夜姬物语.mp41.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Tale.of.The.Princess.Kaguya.2013.[tmdbid-149871]/辉夜姬物语.mp41.bak
+Found match for 'Ghiblies.2002.[tmdbid-222471]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ghiblies.2002.[tmdbid-222471]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/Ghiblies.2002.[tmdbid-222471].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ghiblies.2002.[tmdbid-222471]/Ghiblies.2002.[tmdbid-222471].mkv
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/2002-吉卜力工作室特別短片合辑.mkv.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ghiblies.2002.[tmdbid-222471]/2002-吉卜力工作室特別短片合辑.mkv.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-吉卜力工作室特別短片合辑/多音轨版本,默认日语,外嵌字幕。如果无法自动加载字幕,请下载到本地,用迅雷播放器打开 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ghiblies.2002.[tmdbid-222471]/多音轨版本,默认日语,外嵌字幕。如果无法自动加载字幕,请下载到本地,用迅雷播放器打开
+Found match for 'Pom.Poko.1994.[tmdbid-15283]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/Pom.Poko.1994.[tmdbid-15283].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Pom.Poko.1994.[tmdbid-15283]/Pom.Poko.1994.[tmdbid-15283].mkv
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/此版本为多音轨,下载下来之后,切换语言 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Pom.Poko.1994.[tmdbid-15283]/此版本为多音轨,下载下来之后,切换语言
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1994-百变狸猫/1994百变狸猫BD国日粤3语中字.mkv1.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Pom.Poko.1994.[tmdbid-15283]/1994百变狸猫BD国日粤3语中字.mkv1.bak
+Found match for 'The.Secret.World.of.Arrietty.2010.[tmdbid-51739]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Secret.World.of.Arrietty.2010.[tmdbid-51739]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/The.Secret.World.of.Arrietty.2010.[tmdbid-51739].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Secret.World.of.Arrietty.2010.[tmdbid-51739]/The.Secret.World.of.Arrietty.2010.[tmdbid-51739].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/2010借东西的小人阿莉埃蒂(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Secret.World.of.Arrietty.2010.[tmdbid-51739]/2010借东西的小人阿莉埃蒂(国语).mp41
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2010-借东西的小矮人亚莉亚蒂/2010借东西的小人阿莉埃蒂(日语).mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Secret.World.of.Arrietty.2010.[tmdbid-51739]/2010借东西的小人阿莉埃蒂(日语).mp4.bak
+Found match for 'Castle.in.the.Sky.1986.[tmdbid-10515]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Castle.in.the.Sky.1986.[tmdbid-10515]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/1986-天空之城【日语】.mp41.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Castle.in.the.Sky.1986.[tmdbid-10515]/1986-天空之城【日语】.mp41.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/1986-天空之城【国语】.mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Castle.in.the.Sky.1986.[tmdbid-10515]/1986-天空之城【国语】.mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1986-天空之城/Castle.in.the.Sky.1986.[tmdbid-10515].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Castle.in.the.Sky.1986.[tmdbid-10515]/Castle.in.the.Sky.1986.[tmdbid-10515].mp4
+Found match for 'From.Up.on.Poppy.Hill.2011.[tmdbid-83389]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/From.Up.on.Poppy.Hill.2011.[tmdbid-83389]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/2011来自虞美人之坡【日语】.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/From.Up.on.Poppy.Hill.2011.[tmdbid-83389]/2011来自虞美人之坡【日语】.mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/2011来自虞美人之坡【国语】.mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/From.Up.on.Poppy.Hill.2011.[tmdbid-83389]/2011来自虞美人之坡【国语】.mp41
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-虞美人盛开的山坡/From.Up.on.Poppy.Hill.2011.[tmdbid-83389].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/From.Up.on.Poppy.Hill.2011.[tmdbid-83389]/From.Up.on.Poppy.Hill.2011.[tmdbid-83389].mp4
+Found match for 'Porco.Rosso.1992.[tmdbid-11621]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/1992飞天红猪侠(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Porco.Rosso.1992.[tmdbid-11621]/1992飞天红猪侠(国语).mp41
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/1992飞天红猪侠(日语).mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Porco.Rosso.1992.[tmdbid-11621]/1992飞天红猪侠(日语).mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/Porco.Rosso.1992.[tmdbid-11621].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Porco.Rosso.1992.[tmdbid-11621]/Porco.Rosso.1992.[tmdbid-11621].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1992-飞天红猪侠/重命名 删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Porco.Rosso.1992.[tmdbid-11621]/重命名 删除文件后缀名后面的数字1,即可播放
+Found match for 'Princess.Mononoke.1997.[tmdbid-128]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Princess.Mononoke.1997.[tmdbid-128]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/Princess.Mononoke.1997.[tmdbid-128].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Princess.Mononoke.1997.[tmdbid-128]/Princess.Mononoke.1997.[tmdbid-128].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/1997幽灵公主(日语).mp41.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Princess.Mononoke.1997.[tmdbid-128]/1997幽灵公主(日语).mp41.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1997-幽灵公主/1997幽灵公主(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Princess.Mononoke.1997.[tmdbid-128]/1997幽灵公主(国语).mp41
+Found match for 'Grave.of.the.Fireflies.1988.[tmdbid-76826]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/1988萤火虫之墓.(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Grave.of.the.Fireflies.1988.[tmdbid-76826]/1988萤火虫之墓.(国语).mp41
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/Grave.of.the.Fireflies.1988.[tmdbid-76826].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Grave.of.the.Fireflies.1988.[tmdbid-76826]/Grave.of.the.Fireflies.1988.[tmdbid-76826].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/1988萤火虫之墓(日语).mp41.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Grave.of.the.Fireflies.1988.[tmdbid-76826]/1988萤火虫之墓(日语).mp41.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-萤火虫之墓/重命名 删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Grave.of.the.Fireflies.1988.[tmdbid-76826]/重命名 删除文件后缀名后面的数字1,即可播放
+Found match for '2014-十字路口短篇集.2014' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/2014-十字路口短篇集.2014.mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/2014-十字路口短篇集.2014/2014-十字路口短篇集.2014.mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2014-十字路口【短篇集】/十字路口.CrossRoad.2014.中日双语.BluRay.1080P.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/2014-十字路口短篇集.2014/十字路口.CrossRoad.2014.中日双语.BluRay.1080P.mp4.bak
+Found match for 'Tales.from.Earthsea.2006.[tmdbid-37933]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Tales.from.Earthsea.2006.[tmdbid-37933]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/Tales.from.Earthsea.2006.[tmdbid-37933].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Tales.from.Earthsea.2006.[tmdbid-37933]/Tales.from.Earthsea.2006.[tmdbid-37933].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/2006地海战记(日语).mp41.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Tales.from.Earthsea.2006.[tmdbid-37933]/2006地海战记(日语).mp41.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-地海战记/2006地海战记(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Tales.from.Earthsea.2006.[tmdbid-37933]/2006地海战记(国语).mp41
+Found match for 'Only.Yesterday.1991.[tmdbid-15080]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/1991岁月的童话(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Only.Yesterday.1991.[tmdbid-15080]/1991岁月的童话(国语).mp41
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/1991岁月的童话(日语).mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Only.Yesterday.1991.[tmdbid-15080]/1991岁月的童话(日语).mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/Only.Yesterday.1991.[tmdbid-15080].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Only.Yesterday.1991.[tmdbid-15080]/Only.Yesterday.1991.[tmdbid-15080].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1991-岁月的童话/重命名 删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Only.Yesterday.1991.[tmdbid-15080]/重命名 删除文件后缀名后面的数字1,即可播放
+Found match for 'Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371]/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/国语日语二语版,默认日语,如需看国语版,请下载本地,切换音轨即可,不懂请百度 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371]/国语日语二语版,默认日语,如需看国语版,请下载本地,切换音轨即可,不懂请百度
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/1979鲁邦三世:卡里奥斯特罗城(日语).mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371]/1979鲁邦三世:卡里奥斯特罗城(日语).mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1979-鲁邦三世 卡里奥斯特罗城/重命名 删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Lupin.the.Third.The.Castle.of.Cagliostro.1979.[tmdbid-15371]/重命名 删除文件后缀名后面的数字1,即可播放
+Found match for 'Ponyo.2008.[tmdbid-12429]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ponyo.2008.[tmdbid-12429]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/2008悬崖 日语中字.mp41.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ponyo.2008.[tmdbid-12429]/2008悬崖 日语中字.mp41.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2008-《悬崖上的金鱼姬》《崖上的波妞》/Ponyo.2008.[tmdbid-12429].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ponyo.2008.[tmdbid-12429]/Ponyo.2008.[tmdbid-12429].mp4
+Found match for 'Weathering.with.You.2019.[tmdbid-568160]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/Weathering.with.You.2019.[tmdbid-568160].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Weathering.with.You.2019.[tmdbid-568160]/Weathering.with.You.2019.[tmdbid-568160].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2019-天气之子/天气之子.原盘中字.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Weathering.with.You.2019.[tmdbid-568160]/天气之子.原盘中字.mp4.bak
+Found match for '2007-猫的集会短篇集.2007' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/2007-猫的集会短篇集.2007.mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/2007-猫的集会短篇集.2007/2007-猫的集会短篇集.2007.mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-猫的集会【短篇集】/猫的集会.2007.中日双语.BluRay.1080P.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/2007-猫的集会短篇集.2007/猫的集会.2007.中日双语.BluRay.1080P.mp4.bak
+Found match for 'Your.Name.2016.[tmdbid-372058]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/Your.Name.2016.[tmdbid-372058].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Your.Name.2016.[tmdbid-372058]/Your.Name.2016.[tmdbid-372058].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2016-你的名字/2016-你的名字.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Your.Name.2016.[tmdbid-372058]/2016-你的名字.mp4.bak
+Found match for '5.Centimeters.per.Second.2007.[tmdbid-38142]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/5.Centimeters.per.Second.2007.[tmdbid-38142].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/5.Centimeters.per.Second.2007.[tmdbid-38142]/5.Centimeters.per.Second.2007.[tmdbid-38142].mkv
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/5.Centimeters.per.Second.2007.[tmdbid-38142]/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2007-秒速五厘米/默认字幕版720P.mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/5.Centimeters.per.Second.2007.[tmdbid-38142]/默认字幕版720P.mkv
+Found match for 'Spirited.Away.2001.[tmdbid-129]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Spirited.Away.2001.[tmdbid-129]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/2001 千与千X.【日语】.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Spirited.Away.2001.[tmdbid-129]/2001 千与千X.【日语】.mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/2001 千与千X.【国语】.mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Spirited.Away.2001.[tmdbid-129]/2001 千与千X.【国语】.mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2001-千与千寻/Spirited.Away.2001.[tmdbid-129].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Spirited.Away.2001.[tmdbid-129]/Spirited.Away.2001.[tmdbid-129].mp4
+Found match for 'Ocean.Waves.1993.[tmdbid-21057]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/国日双语【默认日语】.mkv.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ocean.Waves.1993.[tmdbid-21057]/国日双语【默认日语】.mkv.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/国语日语二语版,默认日语,如需看国语版,请下载本地,切换音轨即可,不懂请百度 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ocean.Waves.1993.[tmdbid-21057]/国语日语二语版,默认日语,如需看国语版,请下载本地,切换音轨即可,不懂请百度
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/重命名 删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ocean.Waves.1993.[tmdbid-21057]/重命名 删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1993-听到涛声/Ocean.Waves.1993.[tmdbid-21057].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Ocean.Waves.1993.[tmdbid-21057]/Ocean.Waves.1993.[tmdbid-21057].mkv
+Found match for '1999-她与她的猫.1999' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/默认字幕版720P.mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/1999-她与她的猫.1999/默认字幕版720P.mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/1999-她与她的猫.1999.mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/1999-她与她的猫.1999/1999-她与她的猫.1999.mkv
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-她与她的猫/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/1999-她与她的猫.1999/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv.bak
+Found match for 'Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/1984风之谷(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81]/1984风之谷(国语).mp41
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/1984风之谷(日语).mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81]/1984风之谷(日语).mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1984-风之谷/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81]/Nausicaä.of.the.Valley.of.the.Wind.1984.[tmdbid-81].mp4
+Found match for 'My.Neighbor.Totoro.1988.[tmdbid-8392]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/1988龙猫(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/My.Neighbor.Totoro.1988.[tmdbid-8392]/1988龙猫(国语).mp41
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/1988龙猫(日语).mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/My.Neighbor.Totoro.1988.[tmdbid-8392]/1988龙猫(日语).mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/重命名 删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/My.Neighbor.Totoro.1988.[tmdbid-8392]/重命名 删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1988-龙猫/My.Neighbor.Totoro.1988.[tmdbid-8392].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/My.Neighbor.Totoro.1988.[tmdbid-8392]/My.Neighbor.Totoro.1988.[tmdbid-8392].mp4
+Found match for 'Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770]/Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770].mkv
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2006-穿越时空的少女/2006-C越時空的少女【日语】.mkv1.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Time.Traveller.The.Girl.Who.Leapt.Through.Time.2006.[tmdbid-54770]/2006-C越時空的少女【日语】.mkv1.bak
+Found match for 'My.Neighbors.the.Yamadas.1999.[tmdbid-16198]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/My.Neighbors.the.Yamadas.1999.[tmdbid-16198].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/My.Neighbors.the.Yamadas.1999.[tmdbid-16198]/My.Neighbors.the.Yamadas.1999.[tmdbid-16198].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/1999我的邻居山田君(日语).mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/My.Neighbors.the.Yamadas.1999.[tmdbid-16198]/1999我的邻居山田君(日语).mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1999-我的邻居山田君/1999我的邻居山田君(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/My.Neighbors.the.Yamadas.1999.[tmdbid-16198]/1999我的邻居山田君(国语).mp41
+Found match for 'Voices.of.a.Distant.Star.2002.[tmdbid-37910]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/默认字幕版720P.mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Voices.of.a.Distant.Star.2002.[tmdbid-37910]/默认字幕版720P.mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Voices.of.a.Distant.Star.2002.[tmdbid-37910]/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-星之声/Voices.of.a.Distant.Star.2002.[tmdbid-37910].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Voices.of.a.Distant.Star.2002.[tmdbid-37910]/Voices.of.a.Distant.Star.2002.[tmdbid-37910].mkv
+Found match for 'The.Cat.Returns.2002.[tmdbid-15370]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/2002猫的报恩(国语).mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Cat.Returns.2002.[tmdbid-15370]/2002猫的报恩(国语).mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/2002猫的报恩(日语).mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Cat.Returns.2002.[tmdbid-15370]/2002猫的报恩(日语).mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/The.Cat.Returns.2002.[tmdbid-15370].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Cat.Returns.2002.[tmdbid-15370]/The.Cat.Returns.2002.[tmdbid-15370].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2002-猫的报恩/重命名 删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/The.Cat.Returns.2002.[tmdbid-15370]/重命名 删除文件后缀名后面的数字1,即可播放
+Found match for 'Whisper.of.the.Heart.1995.[tmdbid-37797]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/删除文件后缀名后面的数字1,即可播放 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Whisper.of.the.Heart.1995.[tmdbid-37797]/删除文件后缀名后面的数字1,即可播放
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/Whisper.of.the.Heart.1995.[tmdbid-37797].mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Whisper.of.the.Heart.1995.[tmdbid-37797]/Whisper.of.the.Heart.1995.[tmdbid-37797].mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/1995侧耳倾听(日语).mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Whisper.of.the.Heart.1995.[tmdbid-37797]/1995侧耳倾听(日语).mp4.bak
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/1995-侧耳倾听/1995侧耳倾听(国语).mp41 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Whisper.of.the.Heart.1995.[tmdbid-37797]/1995侧耳倾听(国语).mp41
+Found match for '2003-笑颜短篇集.2003' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/2003-笑颜短篇集.2003.mp4 -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/2003-笑颜短篇集.2003/2003-笑颜短篇集.2003.mp4
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2003-笑颜【短篇集】/笑颜.2003.中日双语.mp4.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/2003-笑颜短篇集.2003/笑颜.2003.中日双语.mp4.bak
+Found match for 'Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子'.
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707].mkv -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707]/Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707].mkv
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/默认字幕版720P.rmvb -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707]/默认字幕版720P.rmvb
+[DRY-RUN] Would move: /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/赠品:宫崎骏+新海城动画/2011-追逐繁星的孩子/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv.bak -> /media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Children.Who.Chase.Lost.Voices.2011.[tmdbid-79707]/手动加载字幕版1080P(下载下来用播放软件打开,开启字幕功能).mkv.bak

+ 1 - 0
sync_errors.txt

@@ -0,0 +1 @@
+No match found in B for 'Howls.Moving.Castle.2004.[tmdbid-4935]' in '/media/yazoo/luks-67672a15-a412-4a17-bb01-c76509e21243/crm/crm-media/anime/sync/anime/Howls.Moving.Castle.2004.[tmdbid-4935]'.

+ 75 - 0
sync_media.py

@@ -0,0 +1,75 @@
+import os
+import shutil
+import sys
+
+def sync_media_from_b_to_a(dir_a, dir_b, dry_run=False, dry_run_file="sync_dry_run.txt", error_file="sync_errors.txt"):
+    """
+    For each subdirectory in A, use its name to search B for a media file (.mkv or .mp4) with the same base name.
+    If found, move all files from that B subdirectory into the corresponding A subdirectory.
+    If dry_run is True, only print and save what would be moved.
+    Also record directories where no match or exceptions occur.
+    """
+    media_exts = ('.mkv', '.mp4')
+    dry_run_lines = []
+    error_lines = []
+    for subdir_a in os.listdir(dir_a):
+        path_a = os.path.join(dir_a, subdir_a)
+        if not os.path.isdir(path_a):
+            continue
+        base_name = subdir_a
+        found = False
+        try:
+            for root_b, dirs_b, files_b in os.walk(dir_b):
+                for file_b in files_b:
+                    name_b, ext_b = os.path.splitext(file_b)
+                    if ext_b.lower() in media_exts and name_b == base_name:
+                        found = True
+                        msg = f"Found match for '{base_name}' in '{root_b}'."
+                        print(msg)
+                        dry_run_lines.append(msg)
+                        for src_file in os.listdir(root_b):
+                            src_file_path = os.path.join(root_b, src_file)
+                            dest_file_path = os.path.join(path_a, src_file)
+                            if dry_run:
+                                line = f"[DRY-RUN] Would move: {src_file_path} -> {dest_file_path}"
+                                print(line)
+                                dry_run_lines.append(line)
+                            else:
+                                shutil.move(src_file_path, dest_file_path)
+                                print(f"Moved: {src_file_path} -> {dest_file_path}")
+                        break
+                if found:
+                    break
+            if not found:
+                msg = f"No match found in B for '{base_name}' in '{path_a}'."
+                print(msg)
+                error_lines.append(msg)
+        except Exception as e:
+            msg = f"Exception for '{base_name}' in '{path_a}': {e}"
+            print(msg)
+            error_lines.append(msg)
+    # Save dry run and error logs if dry_run
+    if dry_run:
+        with open(dry_run_file, "w", encoding="utf-8") as f:
+            for line in dry_run_lines:
+                f.write(line + "\n")
+        print(f"Dry run output saved to {dry_run_file}")
+    if error_lines:
+        with open(error_file, "w", encoding="utf-8") as f:
+            for line in error_lines:
+                f.write(line + "\n")
+        print(f"Errors/unmatched directories saved to {error_file}")
+
+if __name__ == "__main__":
+    # python3 sync_media.py <dir_A> <dir_B> [--dry-run]
+    if len(sys.argv) < 3:
+        print("Usage: python sync_media.py <dir_A> <dir_B> [--dry-run]")
+    else:
+        dry_run = "--dry-run" in sys.argv
+        sync_media_from_b_to_a(
+            sys.argv[1],
+            sys.argv[2],
+            dry_run=dry_run,
+            dry_run_file="sync_dry_run.txt",
+            error_file="sync_errors.txt"
+        )

+ 142 - 0
transform_files.py

@@ -0,0 +1,142 @@
+import json
+import os
+import re
+
+def sanitize_filename(name):
+    # Remove illegal characters for most filesystems and Jellyfin
+    name = re.sub(r'[\\/:*?"<>|]', '', name)
+    name = name.replace('【', '').replace('】', '')
+    name = name.replace('《', '').replace('》', '')
+    name = name.replace('(', '').replace(')', '')
+    name = name.replace(' ', '.')
+    name = re.sub(r'\.+', '.', name)  # Replace multiple dots with one
+    return name.strip('.')
+
+
+def transform_entry(entry):
+    # Try to extract year and english title for Jellyfin
+    year = None
+    title = entry.get("english") or entry.get("chinese")
+    chinese = entry.get("chinese", "")
+    tmdb_id = entry.get("tmdb_id")
+    # Extract year from chinese field if present
+    m = re.match(r"(\d{4})[- ]", chinese)
+    if m:
+        year = m.group(1)
+    # Build new filename: English.Title.Year.[tmdbid-<id>].ext
+    transformed_files = []
+    for f in entry.get("media_files", []):
+        ext = os.path.splitext(f)[1]
+        # If extension ends with '1' (e.g., .mp41, .mkv1), strip the '1'
+        if len(ext) > 1 and ext[-1] == "1":
+            ext = ext[:-1]
+        if title:
+            base = sanitize_filename(title)
+            parts = [base]
+            if year:
+                parts.append(year)
+            if tmdb_id:
+                parts.append(f"[tmdbid-{tmdb_id}]")
+            new_name = ".".join(parts) + ext
+            transformed_files.append({
+                "original": f,
+                "suggested": os.path.join(os.path.dirname(f), new_name)
+            })
+        else:
+            transformed_files.append({
+                "original": f,
+                "suggested": f
+            })
+    # Add Jellyfin-friendly fields
+    result = dict(entry)
+    result["jellyfin_title"] = sanitize_filename(title) if title else None
+    result["jellyfin_year"] = year
+    result["jellyfin_media_files"] = transformed_files
+    return result
+
+
+# def transform_entry(entry):
+#     # Try to extract year and english title for Jellyfin
+#     year = None
+#     title = entry.get("english") or entry.get("chinese")
+#     chinese = entry.get("chinese", "")
+#     tmdb_id = entry.get("tmdb_id")
+#     # Extract year from chinese field if present
+#     m = re.match(r"(\d{4})[- ]", chinese)
+#     if m:
+#         year = m.group(1)
+#     # Build new filename: English.Title.Year.[tmdbid-<id>].ext
+#     transformed_files = []
+#     for f in entry.get("media_files", []):
+#         ext = os.path.splitext(f)[1]
+#         if title:
+#             base = sanitize_filename(title)
+#             parts = [base]
+#             if year:
+#                 parts.append(year)
+#             if tmdb_id:
+#                 parts.append(f"[tmdbid-{tmdb_id}]")
+#             new_name = ".".join(parts) + ext
+#             transformed_files.append({
+#                 "original": f,
+#                 "suggested": os.path.join(os.path.dirname(f), new_name)
+#             })
+#         else:
+#             transformed_files.append({
+#                 "original": f,
+#                 "suggested": f
+#             })
+#     # Add Jellyfin-friendly fields
+#     result = dict(entry)
+#     result["jellyfin_title"] = sanitize_filename(title) if title else None
+#     result["jellyfin_year"] = year
+#     result["jellyfin_media_files"] = transformed_files
+#     return result
+
+
+# def transform_entry(entry):
+#     # Try to extract year and english title for Jellyfin
+#     year = None
+#     title = entry.get("english") or entry.get("chinese")
+#     chinese = entry.get("chinese", "")
+#     # Extract year from chinese field if present
+#     m = re.match(r"(\d{4})[- ]", chinese)
+#     if m:
+#         year = m.group(1)
+#     # Build new filename: English.Title.(Year).ext
+#     transformed_files = []
+#     for f in entry.get("media_files", []):
+#         ext = os.path.splitext(f)[1]
+#         if title:
+#             if year:
+#                 new_name = f"{sanitize_filename(title)}.{year}{ext}"
+#             else:
+#                 new_name = f"{sanitize_filename(title)}{ext}"
+#             transformed_files.append({
+#                 "original": f,
+#                 "suggested": os.path.join(os.path.dirname(f), new_name)
+#             })
+#         else:
+#             transformed_files.append({
+#                 "original": f,
+#                 "suggested": f
+#             })
+#     # Add Jellyfin-friendly fields
+#     result = dict(entry)
+#     result["jellyfin_title"] = sanitize_filename(title) if title else None
+#     result["jellyfin_year"] = year
+#     result["jellyfin_media_files"] = transformed_files
+#     return result
+
+def main():
+    with open("ghibli_imdb_results.json", "r", encoding="utf-8") as f:
+        data = json.load(f)
+    transformed = {"matched": [], "unmatched": []}
+    for section in ["matched", "unmatched"]:
+        for entry in data.get(section, []):
+            transformed[section].append(transform_entry(entry))
+    with open("ghibli_jellyfin_ready.json", "w", encoding="utf-8") as f:
+        json.dump(transformed, f, ensure_ascii=False, indent=2)
+
+if __name__ == "__main__":
+    main()