add-api-extract-pdf-content

This commit is contained in:
unknown committed 2026-03-03 16:11:10 +07:00
1 parent 4e3358fb1c
commit ef8f0afa64
7 files changed
+176 -1

No files matched your search

+38 -1
View File
@@ -2,6 +2,8 @@ from flask import Flask, request, jsonify
import requests
from bs4 import BeautifulSoup
from DuckDuckGo import search_duckduckgo
from PdfExtract import process_pdf, process_uploaded_pdf
app = Flask(__name__)
@@ -14,6 +16,41 @@ def search():
results = search_duckduckgo(query)
return jsonify(results)
# ================= API 1: Extract from URL =================
@app.route("/extract", methods=["POST"])
def extract():
try:
data = request.get_json()
if not data or "url" not in data:
return jsonify({"error": "Missing URL"}), 400
result = process_pdf(data["url"])
return jsonify(result)
except Exception as e:
return jsonify({"error": str(e)}), 400
# ================= API 2: Upload file =================
@app.route("/upload", methods=["POST"])
def upload():
try:
if "file" not in request.files:
return jsonify({"error": "No file field"}), 400
file = request.files["file"]
if file.filename == "":
return jsonify({"error": "No selected file"}), 400
file_bytes = file.read()
result = process_uploaded_pdf(file_bytes)
return jsonify(result)
except Exception as e:
return jsonify({"error": str(e)}), 400
if __name__ == "__main__":
app.run(debug=True)
app.run(host="0.0.0.0", port=8000)