MCPcopy Create free account
hub / github.com/TheSmallHanCat/flow2api / _guess_extension

Method _guess_extension

src/services/file_cache.py:90–120  ·  view source on GitHub ↗

尽量保留原始扩展名,未知时回退到默认值。

(self, url: str, media_type: str)

Source from the content-addressed store, hash-verified

88 return None
89
90 def _guess_extension(self, url: str, media_type: str) -> str:
91 """尽量保留原始扩展名,未知时回退到默认值。"""
92 path = urlparse(url).path or ""
93 guessed, _ = mimetypes.guess_type(path)
94 suffix = Path(path).suffix.lower()
95
96 if media_type == "video":
97 if suffix in {".mp4", ".mov", ".webm", ".mkv", ".m4v"}:
98 return suffix
99 if guessed == "video/webm":
100 return ".webm"
101 if guessed == "video/quicktime":
102 return ".mov"
103 return ".mp4"
104
105 if media_type == "image":
106 if suffix in {".png", ".jpg", ".jpeg", ".webp", ".gif", ".avif", ".bmp"}:
107 return suffix
108 if guessed == "image/png":
109 return ".png"
110 if guessed == "image/webp":
111 return ".webp"
112 if guessed == "image/gif":
113 return ".gif"
114 if guessed == "image/avif":
115 return ".avif"
116 if guessed == "image/bmp":
117 return ".bmp"
118 return ".jpg"
119
120 return suffix
121
122 def _build_download_headers(
123 self,

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected