diff --git a/deploy/services/drhider.py b/deploy/services/drhider.py index b30ecd7..8f788d6 100644 --- a/deploy/services/drhider.py +++ b/deploy/services/drhider.py @@ -283,7 +283,11 @@ class TwoPassObfuscator: ext = os.path.splitext(fname)[1].lower() if ext == '.docx': - from docx import Document + try: + from docx import Document + except ImportError: + text = content.decode('utf-8', errors='replace') + return text, None doc = Document(io.BytesIO(content)) text = "\n".join(p.text for p in doc.paragraphs) for table in doc.tables: @@ -291,7 +295,11 @@ class TwoPassObfuscator: text += "\n" + " | ".join(cell.text for cell in row.cells) elif ext == '.pdf': - import pdfplumber + try: + import pdfplumber + except ImportError: + text = content.decode('utf-8', errors='replace') + return text, None with pdfplumber.open(io.BytesIO(content)) as pdf: for page in pdf.pages: t = page.extract_text() diff --git a/site/app.py b/site/app.py index d9200fe..ab35a07 100644 --- a/site/app.py +++ b/site/app.py @@ -138,7 +138,7 @@ def health(): if __name__ == "__main__": - app.run(host="0.0.0.0", port=5000) + app.run(host="0.0.0.0", port=5000, threaded=True) # ── Совместимость с Lucee-путями ────────────────────────────── diff --git a/site/services/drhider.py b/site/services/drhider.py index b30ecd7..8f788d6 100644 --- a/site/services/drhider.py +++ b/site/services/drhider.py @@ -283,7 +283,11 @@ class TwoPassObfuscator: ext = os.path.splitext(fname)[1].lower() if ext == '.docx': - from docx import Document + try: + from docx import Document + except ImportError: + text = content.decode('utf-8', errors='replace') + return text, None doc = Document(io.BytesIO(content)) text = "\n".join(p.text for p in doc.paragraphs) for table in doc.tables: @@ -291,7 +295,11 @@ class TwoPassObfuscator: text += "\n" + " | ".join(cell.text for cell in row.cells) elif ext == '.pdf': - import pdfplumber + try: + import pdfplumber + except ImportError: + text = content.decode('utf-8', errors='replace') + return text, None with pdfplumber.open(io.BytesIO(content)) as pdf: for page in pdf.pages: t = page.extract_text()