MalikSahib1 commited on
Commit
8323fba
·
verified ·
1 Parent(s): e934b6c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -19
app.py CHANGED
@@ -1,12 +1,9 @@
1
- from flask import Flask, request, jsonify
2
  import re
3
 
4
  app = Flask(__name__)
5
 
6
  def get_youtube_video_id(url):
7
- """
8
- Extracts the unique YouTube video ID from various URL formats.
9
- """
10
  patterns = [
11
  r'(?:https?:\/\/)?(?:www\.)?youtube\.com\/watch\?v=([a-zA-Z0-9_-]{11})',
12
  r'(?:https?:\/\/)?(?:www\.)?youtu\.be\/([a-zA-Z0-9_-]{11})',
@@ -20,28 +17,23 @@ def get_youtube_video_id(url):
20
 
21
  @app.route('/')
22
  def home():
23
- return "API is running. Use /api?url=YOUTUBE_URL to get thumbnails.", 200
24
 
25
  @app.route('/api')
26
  def get_thumbnails():
27
  video_url = request.args.get('url')
28
-
29
  if not video_url:
30
- return jsonify({"error": "The 'url' query parameter is required."}), 400
31
-
32
  video_id = get_youtube_video_id(video_url)
33
-
34
  if not video_id:
35
- return jsonify({"error": "Invalid YouTube URL."}), 400
36
-
37
- thumbnails = {
38
- "maxresdefault": f"https://img.youtube.com/vi/{video_id}/maxresdefault.jpg",
39
- "sddefault": f"https://img.youtube.com/vi/{video_id}/sddefault.jpg",
40
- "hqdefault": f"https://img.youtube.com/vi/{video_id}/hqdefault.jpg",
41
- "mqdefault": f"https://img.youtube.com/vi/{video_id}/mqdefault.jpg"
42
  }
43
-
44
- return jsonify(thumbnails)
45
 
46
  if __name__ == '__main__':
47
- app.run(host="0.0.0.0", port=7860)
 
1
+ from flask import Flask, request, jsonify, redirect
2
  import re
3
 
4
  app = Flask(__name__)
5
 
6
  def get_youtube_video_id(url):
 
 
 
7
  patterns = [
8
  r'(?:https?:\/\/)?(?:www\.)?youtube\.com\/watch\?v=([a-zA-Z0-9_-]{11})',
9
  r'(?:https?:\/\/)?(?:www\.)?youtu\.be\/([a-zA-Z0-9_-]{11})',
 
17
 
18
  @app.route('/')
19
  def home():
20
+ return "API is running. Use /api?url=YOUTUBE_URL to get thumbnails.", 200
21
 
22
  @app.route('/api')
23
  def get_thumbnails():
24
  video_url = request.args.get('url')
 
25
  if not video_url:
26
+ return jsonify({"error": "The 'url' query parameter is required."}), 400
 
27
  video_id = get_youtube_video_id(video_url)
 
28
  if not video_id:
29
+ return jsonify({"error": "Invalid or unsupported YouTube URL provided."}), 400
30
+ thumbnail_urls = {
31
+ "high_quality": f"https://img.youtube.com/vi/{video_id}/maxresdefault.jpg",
32
+ "medium_quality": f"https://img.youtube.com/vi/{video_id}/sddefault.jpg",
33
+ "standard_quality": f"https://img.youtube.com/vi/{video_id}/hqdefault.jpg",
34
+ "default": f"https://img.youtube.com/vi/{video_id}/mqdefault.jpg"
 
35
  }
36
+ return jsonify(thumbnail_urls)
 
37
 
38
  if __name__ == '__main__':
39
+ app.run(host="0.0.0.0", port=7860)