From d8b586e02cd14f7eed6b330bd4f110cb1e7f24ad Mon Sep 17 00:00:00 2001
From: 游雁 <zhifu.gzf@alibaba-inc.com>
Date: 星期二, 09 一月 2024 20:33:12 +0800
Subject: [PATCH] funasr1.0  modelscope

---
 funasr/download/file.py |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/funasr/download/file.py b/funasr/download/file.py
index d93f24c..da4958a 100644
--- a/funasr/download/file.py
+++ b/funasr/download/file.py
@@ -8,7 +8,23 @@
 from typing import Generator, Union
 
 import requests
+from urllib.parse import urlparse
 
+def download_from_url(url):
+    result = urlparse(url)
+    file_path = None
+    if result.scheme is not None and len(result.scheme) > 0:
+        storage = HTTPStorage()
+        # bytes
+        data = storage.read(url)
+        work_dir = tempfile.TemporaryDirectory().name
+        if not os.path.exists(work_dir):
+            os.makedirs(work_dir)
+        file_path = os.path.join(work_dir, os.path.basename(url))
+        with open(file_path, 'wb') as fb:
+            fb.write(data)
+    assert file_path is not None, f"failed to download: {url}"
+    return file_path
 
 class Storage(metaclass=ABCMeta):
     """Abstract class of storage.

--
Gitblit v1.9.1