Abhaykoul commited on
Commit
b276c5f
·
verified ·
1 Parent(s): fc866a0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -4
app.py CHANGED
@@ -1,10 +1,10 @@
1
  import re
2
  import requests
3
  from fastapi import FastAPI, HTTPException
4
- from fastapi.responses import RedirectResponse
5
  from pydantic import BaseModel
6
  from dotenv import load_dotenv
7
  import os
 
8
 
9
  # Load environment variables
10
  load_dotenv()
@@ -27,11 +27,21 @@ class RoastRequest(BaseModel):
27
  content: str
28
 
29
  def fetch_roasts(content: str):
 
 
 
 
 
 
 
 
 
 
30
  try:
31
  # Make API request
32
  response = requests.post(
33
  API_URL,
34
- headers={'origin': Origin},
35
  data={'content': content, 'model': MODEL}
36
  )
37
  response.raise_for_status() # Raises HTTPError for bad responses
@@ -47,11 +57,11 @@ def fetch_roasts(content: str):
47
  raise HTTPException(status_code=500, detail=f"Response format error: {e}")
48
  except Exception as e:
49
  raise HTTPException(status_code=500, detail=f"Unexpected error: {e}")
50
-
51
  @app.get("/", include_in_schema=False)
52
  async def root():
53
  return RedirectResponse(url="https://roastapi-docs.netlify.app/")
54
-
55
  @app.post("/generate-roasts/")
56
  async def generate_roasts(request: RoastRequest):
57
  roasts = fetch_roasts(request.content)
@@ -63,3 +73,4 @@ if __name__ == "__main__":
63
  import uvicorn
64
  print("Starting FastAPI server...")
65
  uvicorn.run(app, host="0.0.0.0", port=8000)
 
 
1
  import re
2
  import requests
3
  from fastapi import FastAPI, HTTPException
 
4
  from pydantic import BaseModel
5
  from dotenv import load_dotenv
6
  import os
7
+ from fake_useragent import UserAgent
8
 
9
  # Load environment variables
10
  load_dotenv()
 
27
  content: str
28
 
29
  def fetch_roasts(content: str):
30
+ ua = UserAgent()
31
+ headers = {
32
+ 'origin': Origin,
33
+ 'user-agent': ua.random,
34
+ 'accept': '*/*',
35
+ 'accept-encoding': 'gzip, deflate, br, zstd',
36
+ 'accept-language': 'en-US,en;q=0.9,en-IN;q=0.8',
37
+ 'referer': 'https://seoroast.co/tools/ai-roast-generator?via=topaitools',
38
+ }
39
+
40
  try:
41
  # Make API request
42
  response = requests.post(
43
  API_URL,
44
+ headers=headers,
45
  data={'content': content, 'model': MODEL}
46
  )
47
  response.raise_for_status() # Raises HTTPError for bad responses
 
57
  raise HTTPException(status_code=500, detail=f"Response format error: {e}")
58
  except Exception as e:
59
  raise HTTPException(status_code=500, detail=f"Unexpected error: {e}")
60
+
61
  @app.get("/", include_in_schema=False)
62
  async def root():
63
  return RedirectResponse(url="https://roastapi-docs.netlify.app/")
64
+
65
  @app.post("/generate-roasts/")
66
  async def generate_roasts(request: RoastRequest):
67
  roasts = fetch_roasts(request.content)
 
73
  import uvicorn
74
  print("Starting FastAPI server...")
75
  uvicorn.run(app, host="0.0.0.0", port=8000)
76
+