from typing import List import re def extract_urls_from_text(text: str) -> List[str]: """从文本中提取URL列表 Args: text (str): 包含URL的文本 Returns: List[str]: 提取的URL列表 """ # URL正则表达式模式 url_pattern = r'https?://(?:[-\w.]|(?:%[\da-fA-F]{2}))+[\w\-\._~:/?#[\]@!\$&\'()*+,;=]*' # 查找所有匹配的URL urls = re.findall(url_pattern, text) # 去重并返回 return list(set(urls)) def extract_filename_from_url(url: str) -> str: """从URL中提取文件名 Args: url (str): 文件的URL或本地路径 Returns: str: 提取的文件名 """ # 移除URL中的查询参数 clean_url = url.split('?')[0] # 提取文件名 filename = clean_url.split('/')[-1] if '/' in clean_url else clean_url return filename