Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -1,3 +1,5 @@
|
|
|
|
|
|
1 |
from pydantic import BaseModel
|
2 |
from fastapi.middleware.cors import CORSMiddleware
|
3 |
from fastapi import FastAPI, HTTPException
|
@@ -19,12 +21,14 @@ app.add_middleware(
|
|
19 |
class GenerateInput(BaseModel):
|
20 |
prompt: str
|
21 |
|
22 |
-
def fetch_profile(prompt: str):
|
23 |
if not prompt.strip():
|
24 |
raise HTTPException(status_code=400, detail="Please provide a non-empty prompt.")
|
25 |
|
26 |
-
|
27 |
-
|
|
|
|
|
28 |
return c
|
29 |
|
30 |
@app.head("/")
|
@@ -32,9 +36,9 @@ async def head_root():
|
|
32 |
return {"message": "This is a HEAD request to the root URL."}
|
33 |
|
34 |
@app.get("/", tags=["Home"])
|
35 |
-
def api_home():
|
36 |
return {'detail': 'Welcome to FastAPI LinkedIn Crawler by Knowde!'}
|
37 |
|
38 |
@app.post("/api/fetch", tags=["Fetch"])
|
39 |
-
def inference(data: GenerateInput):
|
40 |
-
return fetch_profile(data.prompt)
|
|
|
1 |
+
import asyncio
|
2 |
+
from concurrent.futures import ThreadPoolExecutor
|
3 |
from pydantic import BaseModel
|
4 |
from fastapi.middleware.cors import CORSMiddleware
|
5 |
from fastapi import FastAPI, HTTPException
|
|
|
21 |
class GenerateInput(BaseModel):
|
22 |
prompt: str
|
23 |
|
24 |
+
async def fetch_profile(prompt: str):
|
25 |
if not prompt.strip():
|
26 |
raise HTTPException(status_code=400, detail="Please provide a non-empty prompt.")
|
27 |
|
28 |
+
loop = asyncio.get_event_loop()
|
29 |
+
with ThreadPoolExecutor() as pool:
|
30 |
+
api = Linkedin('[email protected]', '#845524509suma')
|
31 |
+
c = await loop.run_in_executor(pool, api.get_profile, prompt)
|
32 |
return c
|
33 |
|
34 |
@app.head("/")
|
|
|
36 |
return {"message": "This is a HEAD request to the root URL."}
|
37 |
|
38 |
@app.get("/", tags=["Home"])
|
39 |
+
async def api_home():
|
40 |
return {'detail': 'Welcome to FastAPI LinkedIn Crawler by Knowde!'}
|
41 |
|
42 |
@app.post("/api/fetch", tags=["Fetch"])
|
43 |
+
async def inference(data: GenerateInput):
|
44 |
+
return await fetch_profile(data.prompt)
|