zrd 3 месяцев назад
Родитель
Сommit
4685e36b9f
5 измененных файлов с 59 добавлено и 2 удалено
  1. 1 1
      Dockerfile
  2. 3 1
      docker-compose.yml
  3. 15 0
      main.py
  4. 1 0
      utils/__init__.py
  5. 39 0
      utils/text_to_html.py

+ 1 - 1
Dockerfile

@@ -17,7 +17,7 @@ ENV PATH="/app/venv/bin:$PATH"
 COPY . /app
 
 # 在虚拟环境中安装项目依赖
-RUN pip install --no-cache-dir -r requirements.txt
+RUN pip install --no-cache-dir -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt
 
 RUN pip install uvicorn
 # 暴露应用端口

+ 3 - 1
docker-compose.yml

@@ -4,4 +4,6 @@ services:
     build: .
     ports:
       - "9020:29015"
-    restart: always   
+    restart: always
+    volumes:
+      - /home/aihtml:/home/aihtml

+ 15 - 0
main.py

@@ -5,6 +5,7 @@ from pydantic import BaseModel
 from tool.pdf2md import pdf2ai
 from utils import dmQuery
 from utils.shellUtil import execute_command_on_linux
+from utils.text_to_html import save_html_to_file
 
 app = FastAPI() # 创建API实例
 
@@ -27,6 +28,11 @@ class Pdf2md(BaseModel):
     pageNum: int
 
 
+class Saved2text(BaseModel):
+    htmlContent: str
+    fileName: str
+
+
 @app.put("/exsql")
 async def create_item( item: Item, q: str = None):
     result = {**item.dict()}
@@ -57,6 +63,15 @@ async def pdf2md(item: Pdf2md, q: str = None):
 
     result = pdf2ai(item.pdfUrl, item.prompt, item.pageNum)
 
+    return result @ app.put("/pdf2md")
+
+
+async def saved2text(item: Saved2text, q: str = None):
+    pdf_url = 'http://42.194.163.46:9007/ywd/%E6%89%AB%E6%8F%8F%E5%85%A8%E8%83%BD%E7%8E%8B%202025-03-20%2021.38.pdf'
+    prompt = "提取有效信息,只输出图片有效信息无效信息不用。"
+
+    result = save_html_to_file(item.htmlContent, item.fileName)
+
     return result
 
 

+ 1 - 0
utils/__init__.py

@@ -4,3 +4,4 @@ from . import ollaiClient
 from . import readPdf
 from . import showdoc
 from . import snowflake
+from . import text_to_html

+ 39 - 0
utils/text_to_html.py

@@ -0,0 +1,39 @@
+def save_html_to_file(html_content, file_name):
+    import os
+    # 保存 HTML 文件的路径,假设保存到 /home 目录下
+    file_path = f"/home/aihtml"
+    directory = os.path.dirname(file_path)
+    if not os.path.exists(directory):
+        os.makedirs(directory)
+    rs_name = f"{file_path}/{file_name}.html"
+    try:
+        # 打开文件并写入 HTML 内容
+        with open(rs_name, "w", encoding="utf-8") as file:
+            file.write(html_content)
+        print(f"HTML 文件已成功保存到 {rs_name}")
+    except Exception as e:
+        print(f"保存文件时出现错误: {e}")
+
+    return f"{file_name}.html"
+
+
+if __name__ == "__main__":
+    # 示例 HTML 内容
+    text = "Hello, World!"
+    html_content = f"""
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>保存的文字内容</title>
+</head>
+<body>
+    <p>{text}</p>
+</body>
+</html>
+"""
+    # 示例文件名称
+    file_name = "4213"
+    # 调用方法保存 HTML 文件
+    save_html_to_file(html_content, file_name)