Spaces:
Running
on
Zero
Running
on
Zero
from flask import Flask, request, jsonify | |
import gradio as gr | |
import pytesseract | |
from google.oauth2 import service_account | |
from googleapiclient.discovery import build | |
app = Flask(__name__) | |
# Google Apps Script API credentials | |
SCOPES = ['https://www.googleapis.com/auth/script.projects'] | |
SERVICE_ACCOUNT_FILE = 'service_account_key.json' | |
# Load credentials from service account file | |
creds = service_account.Credentials.from_service_account_file( | |
SERVICE_ACCOUNT_FILE, SCOPES=SCOPES) | |
# Create Google Apps Script API client | |
script_service = build('script', 'v1', credentials=creds) | |
# Create Gradio interface | |
iface = gr.Interface( | |
fn=lambda img: ocr(img), | |
inputs="image", | |
outputs="text", | |
title="OCR App", | |
description="Upload an image to extract text" | |
) | |
def ocr(img): | |
# Perform OCR using Tesseract | |
text = pytesseract.image_to_string(img) | |
return text | |
def google_chat_insert(text): | |
# Insert text into Google Chat using Google Apps Script API | |
script_service.scripts().run(body={'function': 'insertText', 'parameters': [text]}).execute() | |
return 'Text inserted into Google Chat' | |
if __name__ == '__main__': | |
iface.launch() | |
app.run(debug=True) |