Spaces:
Runtime error
Runtime error
File size: 1,270 Bytes
8ace90a 285074c 8ace90a 835159d 8ace90a 1da72c4 8ace90a 1da72c4 285074c 1da72c4 285074c 8ace90a a899567 701bcd3 b95a3ea 07cbf5c 285074c 8ace90a 8bc0075 8ace90a 285074c 8ace90a 285074c 8ace90a 285074c 8ace90a 285074c 8ace90a 285074c 8ace90a 285074c 8ace90a 0625ee4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
from pytubefix import YouTube
from urllib.parse import quote
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/')
def hello_world():
return "Hello World!"
@app.route('/audio_url')
def get_audio_url():
video_url = request.args.get("url")
if not video_url:
return jsonify({"error": "Missing 'url' query parameter"}), 400
try:
proxies={
'http':'http://lfvqisry-rotate:an43nwquy0o9@p.webshare.io:80',
'https':'http://lfvqisry-rotate:an43nwquy0o9@p.webshare.io:80'
}
yt = YouTube(video_url, proxies=proxies)
# Get best audio-only stream
audio_stream = (
yt.streams
.filter(only_audio=True)
.order_by("abr")
.desc()
.first()
)
if not audio_stream:
return jsonify({"error": "No audio stream found"}), 404
audio_url = audio_stream.url
encoded_audio_url = quote(audio_url, safe="")
return jsonify({
"raw_audio_url": audio_url,
"encoded_audio_url": encoded_audio_url
})
except Exception as e:
return jsonify({"error": str(e)}), 500
if __name__ == "__main__":
app.run(host="0.0.0.0", port=7860) |