import os from docx import Document from PyPDF2 import PdfReader from app.services.file_storage import get_file_content async def parse_reference_file(file_path: str) -> str: ext = os.path.splitext(file_path)[1].lower() content = await get_file_content(file_path) if ext == ".txt": return content.decode("utf-8", errors="ignore") if ext == ".docx": from io import BytesIO doc = Document(BytesIO(content)) return "\n".join(p.text for p in doc.paragraphs if p.text.strip()) if ext == ".pdf": from io import BytesIO reader = PdfReader(BytesIO(content)) return "\n".join(page.extract_text() or "" for page in reader.pages) raise ValueError(f"不支持的文件格式: {ext}")