new demo
Browse files- .ipynb_checkpoints/app-checkpoint.py +0 -12
- app.py +13 -5
- library.py +26 -0
- registration.py +21 -0
- requirements.txt +1 -0
.ipynb_checkpoints/app-checkpoint.py
DELETED
|
@@ -1,12 +0,0 @@
|
|
| 1 |
-
import gradio as gr
|
| 2 |
-
import anvil.server
|
| 3 |
-
|
| 4 |
-
anvil.server.connect('55MH4EBKM22EP4E6D5T6CVSL-VGO5X4SM6JEXGJVT')
|
| 5 |
-
|
| 6 |
-
@anvil.server.callable
|
| 7 |
-
def greet(name):
|
| 8 |
-
return 'Hello World ' + name
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
iface = gr.Interface(fn=greet, inputs="text", outputs="text")
|
| 12 |
-
iface.launch()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app.py
CHANGED
|
@@ -1,12 +1,20 @@
|
|
| 1 |
import gradio as gr
|
|
|
|
|
|
|
| 2 |
import anvil.server
|
|
|
|
|
|
|
|
|
|
| 3 |
|
| 4 |
anvil.server.connect('55MH4EBKM22EP4E6D5T6CVSL-VGO5X4SM6JEXGJVT')
|
|
|
|
|
|
|
| 5 |
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
|
|
|
| 9 |
|
|
|
|
|
|
|
| 10 |
|
| 11 |
-
iface = gr.Interface(fn=greet, inputs="text", outputs="text")
|
| 12 |
-
iface.launch()
|
|
|
|
| 1 |
import gradio as gr
|
| 2 |
+
from threading import Thread
|
| 3 |
+
import time
|
| 4 |
import anvil.server
|
| 5 |
+
from registration import register,get_register,func_reg
|
| 6 |
+
import import_ipynb
|
| 7 |
+
from library import get_file,get_files
|
| 8 |
|
| 9 |
anvil.server.connect('55MH4EBKM22EP4E6D5T6CVSL-VGO5X4SM6JEXGJVT')
|
| 10 |
+
register(get_file)
|
| 11 |
+
register(get_files)
|
| 12 |
|
| 13 |
+
with gr.Blocks() as block:
|
| 14 |
+
textbox = gr.inputs.Textbox(label='Function Register')
|
| 15 |
+
button = gr.Button(value="Show Counter")
|
| 16 |
+
button.click(get_register,inputs=None,outputs=[textbox])
|
| 17 |
|
| 18 |
+
block.launch()
|
| 19 |
+
# anvil.server.wait_forever()
|
| 20 |
|
|
|
|
|
|
library.py
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from registration import update_reg
|
| 2 |
+
from anvil.tables import app_tables
|
| 3 |
+
from PyPDF2 import PdfReader
|
| 4 |
+
from io import BytesIO
|
| 5 |
+
# from notebook_funcs import get_message
|
| 6 |
+
|
| 7 |
+
def get_files():
|
| 8 |
+
update_reg('get_files')
|
| 9 |
+
retval=''
|
| 10 |
+
query=app_tables.files.search()
|
| 11 |
+
for r in query:
|
| 12 |
+
retval+=r['filename']+'\n'
|
| 13 |
+
return retval
|
| 14 |
+
|
| 15 |
+
def get_file(name):
|
| 16 |
+
update_reg('get_file')
|
| 17 |
+
retval=''
|
| 18 |
+
r=app_tables.files.get(filename=name)
|
| 19 |
+
bts=r['file'].get_bytes()
|
| 20 |
+
sio=BytesIO(bts)
|
| 21 |
+
with sio as f:
|
| 22 |
+
reader=PdfReader(f)
|
| 23 |
+
fpage=reader.getPage(0).extractText()
|
| 24 |
+
retval+=r['filename']+'\n'+ fpage
|
| 25 |
+
return retval
|
| 26 |
+
|
registration.py
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import anvil.server
|
| 2 |
+
|
| 3 |
+
func_reg={}
|
| 4 |
+
|
| 5 |
+
def register(function):
|
| 6 |
+
global func_reg
|
| 7 |
+
func={}
|
| 8 |
+
func['func']=function
|
| 9 |
+
func['calls']=0
|
| 10 |
+
func_reg[function.__name__]=func
|
| 11 |
+
anvil.server.callable(function)
|
| 12 |
+
|
| 13 |
+
def update_reg(name):
|
| 14 |
+
global func_reg
|
| 15 |
+
func_reg[name]['calls']+=1
|
| 16 |
+
|
| 17 |
+
def get_register():
|
| 18 |
+
regstr=''
|
| 19 |
+
for f in func_reg:
|
| 20 |
+
regstr+=f + ' called ' + str(func_reg[f]['calls']) + ' times\n'
|
| 21 |
+
return regstr
|
requirements.txt
CHANGED
|
@@ -1 +1,2 @@
|
|
| 1 |
anvil_uplink
|
|
|
|
|
|
| 1 |
anvil_uplink
|
| 2 |
+
PyPDF2
|