- note readme ยังไม่ได้รับการอัปเดต
API แบบควอร์ตสำหรับการดาวน์โหลดวิดีโอและเสียง YouTube การดึงข้อมูลเมตาของวิดีโอ และการจัดการคำบรรยาย API นี้ช่วยให้คุณโต้ตอบกับเนื้อหา YouTube โดยทางโปรแกรม โดยใช้ประโยชน์จากงานเบื้องหลังเพื่อจัดการไฟล์ชั่วคราวและให้การดาวน์โหลดที่มีประสิทธิภาพ
ดาวน์โหลดวิดีโอและเสียง: ดึงเนื้อหาที่มีความละเอียดและบิตเรตที่ระบุ
ดึงข้อมูลเมตาของวิดีโอ: รับรายละเอียด เช่น ชื่อ การดู และข้อมูลช่อง
จัดการคำบรรยาย: ดึงข้อมูลและบันทึกคำบรรยายในรูปแบบ SRT
ตรวจสอบพื้นที่เก็บข้อมูล: ตรวจ สอบให้แน่ใจว่ามีพื้นที่เก็บข้อมูลเพียงพอก่อนที่จะดาวน์โหลด
ไพธอน 3.7+
FFmpeg
การพึ่งพา requirements.txt
โคลนพื้นที่เก็บข้อมูล
โคลนคอมไพล์ https://github.com/DannyAkintunde/YouTube-dl-apicd Youtube-dl-api
เรียกใช้สคริปต์การติดตั้ง
รันสคริปต์ install.sh
เพื่อติดตั้งการพึ่งพา Python และแพ็กเกจระบบ:
chmod +x ติดตั้ง.sh ./install.sh
สคริปต์นี้จะ:
ติดตั้งการพึ่งพา Python ที่แสดงอยู่ใน requirements.txt
อัพเดตรายการแพ็คเกจ
ติดตั้ง FFmpeg
ตรวจสอบการติดตั้ง FFmpeg
ปรับการตั้งค่าในไฟล์ settings.py
:
DEBUG
: เปิดหรือปิดใช้งานโหมดดีบัก (ค่าเริ่มต้น: True
)
PROXY
: กำหนดค่าพรอกซีในรูปแบบ http_proxy,https_proxy
AUTH
: กำหนดค่าการตรวจสอบสิทธิ์ (ค่าเริ่มต้น: False
)
ACCESS_TOKEN
: โทเค็นสำหรับการเข้าถึงทรัพยากรที่ได้รับการป้องกัน (จำเป็นหาก AUTH
เป็น True
)
REFRESH_TOKEN
: โทเค็นสำหรับการรีเฟรชการเข้าถึง (จำเป็นหาก AUTH
เป็น True
)
EXPIRES
: เวลาหมดอายุสำหรับโทเค็นการเข้าถึง (จำเป็นหาก AUTH
เป็น True
)
VISITOR_DATA
: ข้อมูลสำหรับการติดตามผู้เยี่ยมชม (จำเป็นหาก AUTH
เป็น True
)
PO_TOKEN
: Token สำหรับใบสั่งซื้อ (จำเป็นหาก AUTH
เป็น True
)
MAX_DOWNLOAD_SIZE
: ขนาดไฟล์สูงสุดสำหรับการดาวน์โหลด (ค่าเริ่มต้น: 2 GiB
)
MAX_SEARCH_AMOUNT
: จำนวนผลการค้นหาวิดีโอสูงสุด (ค่าเริ่มต้น: 25
)
MIN_SEARCH_AMOUNT
: จำนวนผลการค้นหาวิดีโอขั้นต่ำ (ค่าเริ่มต้น: 2
)
DEFAULT_SEARCH_AMOUNT
: จำนวนผลการค้นหาวิดีโอเริ่มต้น (ค่าเริ่มต้น: 20
)
EXPIRATION_DELAY
: ความล่าช้าในการหมดอายุไฟล์ชั่วคราว (ค่าเริ่มต้น: 1800 seconds
)
TEMP_DIR
: ไดเร็กทอรีสำหรับจัดเก็บไฟล์ชั่วคราว (ค่าเริ่มต้น: 'temp_files'
)
AUTH_DIR
: เส้นทางในการบันทึกไฟล์การรับรองความถูกต้อง (ค่าเริ่มต้น: 'auth'
)
AUTH_FILE_NAME
: ชื่อของไฟล์การตรวจสอบสิทธิ์ (ค่าเริ่มต้น: 'temp.json'
)
CODECS
: รายการตัวแปลงสัญญาณวิดีโอและเสียงที่จะใช้ (ค่าเริ่มต้น: 'avc1,aac'
)
รับ /ping
คำอธิบาย: ตรวจสอบสถานะ API
การตอบสนอง:
{ "ข้อความ": "ปอง"}
200 OK
: {"message": "pong"}
รับ /search
คำอธิบาย: ค้นหาวิดีโอ YouTube ตามคำค้นหา
พารามิเตอร์การค้นหา:
q
หรือ query
: คำค้นหา
คำขอตัวอย่าง:
GET /search?q=python+tutorial
ตัวอย่างคำตอบ:
- { "ความยาว": 20, "ผลลัพธ์": [ { "การเข้าถึง": {"ระยะเวลา": "6 ชั่วโมง 14 นาที 7 วินาที", "หัวข้อ": "บทช่วยสอน Python - หลักสูตรเต็ม Python สำหรับผู้เริ่มต้นโดยการเขียนโปรแกรมด้วย Mosh การดู 41,059,791 ครั้ง 5 ปีที่แล้ว 6 ชั่วโมง 14 นาที" } , "channel": {"id": "UCWv7vMbMWH4-V0ZXdmDpPBA","link": "https://www.youtube.com/channel/UCWv7vMbMWH4-V0ZXdmDpPBA","name": "การเขียนโปรแกรมด้วย Mosh", "ภาพขนาดย่อ" ": [ {"ความสูง": 68,"url": "https://yt3.ggpht.com/lCeCb47hCbXWFa0I4gi8uWDHzWSs7sjK4FDmk7lFEUMRNp6QRzIQOkwaKhwv7eNKZacRI2uR=s68-ck-c0x00ffffff-no-rj","width": 68 } - }, "คำอธิบายตัวอย่าง": [ { "text": "มาเป็น "}, { "ตัวหนา": จริง "ข้อความ": "หลาม"}, { "text": " pro! ครอบคลุมนี้ "}, { "ตัวหนา": จริง "ข้อความ": "บทช่วยสอน"}, { "text": " พาคุณตั้งแต่เริ่มต้นไปจนถึงฮีโร่ ครอบคลุมพื้นฐาน การเรียนรู้ของเครื่อง และ ..."} ], "ระยะเวลา": "6:14:07", "id": "_uQrJ0TkZlc", "link": "https://www.youtube.com/watch?v=_uQrJ0TkZlc", "publishedTime": "5 ปีที่แล้ว", "richThumbnail": {"height": 180,"url": "https://i.ytimg.com/an_webp/_uQrJ0TkZlc/mqdefault_6s.webp?du=3000&sqp=CLf547cG&rs=AOn4CLCAcnB5okiLttIEMkLM9bb-3w28AQ"," width": 320 }, "shelfTitle": null, "ภาพขนาดย่อ": [ { "height": 202, "url": "https://i.ytimg.com/vi/_uQrJ0TkZlc/hq720.jpg?sqp=-oaymwEcCOgCEMoBSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLCQfkbApoaN-_QBOuiyHzWJOiziEA", "ความกว้าง": 0}, { "ความสูง": 404, "url": "https://i.ytimg.com/vi/_uQrJ0TkZlc/hq720.jpg?sqp=-oaymwEcCNAFEJQDSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLCpUFKfUMVNbg8mqTcZ8UdSUjpilw", "ความกว้าง": 720} ], "title": "บทช่วยสอน Python - หลักสูตรเต็ม Python สำหรับผู้เริ่มต้น", "type": "video", "viewCount": {"short": "41 ล้านวิว", "text": "การดู 41,059,791 ครั้ง" } }//...ผลลัพธ์เพิ่มเติมที่นี่ ], "search": "บทช่วยสอน Python", "search_id": "00b5a31c-30d7-4d96-92e5-42b871062bca", "search_suggestions": ["บทช่วยสอน Python", "บทช่วยสอน Python สำหรับผู้เริ่มต้น", "บทช่วยสอน Python 2024" - -
200 OK
: ผลการค้นหา
400 Bad Request
: พารามิเตอร์การสืบค้นหายไปหรือไม่ถูกต้อง
500 Internal Server Error
: ข้อผิดพลาดฝั่งเซิร์ฟเวอร์
รับ /info
คำอธิบาย: ดึงข้อมูลเมตาสำหรับวิดีโอ YouTube
พารามิเตอร์การค้นหา:
url
: URL ของวิดีโอ YouTube
คำขอตัวอย่าง:
รับ /info?url=https://youtube.com/watch?v=dQw4w9WgXcQ
ตัวอย่างคำตอบ:
{ "ผู้เขียน": "Rick Astley", "บิตเรต": ["160kbps", "128kbps", "70kbps", "50kbps" ], "channel_id": "UCuAXFkgsw1L7xaCfnd5JJOw", "channel_url": "https://www.youtube.com/channel/UCuAXFkgsw1L7xaCfnd5JJOw", "description": "วิดีโออย่างเป็นทางการสำหรับ “Never Gonna Give You Up” โดย Rick Astley nnอัลบั้มใหม่ 'Are We There Yet?' วางจำหน่ายแล้ว: ดาวน์โหลดที่นี่: https://RickAstley.lnk.to/AreWeThereYetFA/itunesnn “Never Gonna Give You Up” เป็นเพลงที่ได้รับความนิยมไปทั่วโลกโดยออกฉายในเดือนกรกฎาคม พ.ศ. 2530 โดยติดอันดับชาร์ตใน 25 ประเทศ รวมถึงสหราชอาณาจักรบ้านเกิดของ Rick และ US Billboard Hot 100 นอกจากนี้ยังได้รับรางวัล Brit Award สาขาซิงเกิลยอดเยี่ยมในปี 1988 Stock Aitken และ Waterman เขียนและโปรดิวซ์แทร็กซึ่งเป็นซิงเกิลนำและเพลงนำจากอัลบั้มเปิดตัวของ Rick "Whenever You Need Somebody" ตัวเองเป็นอันดับหนึ่งในสหราชอาณาจักรและมียอดขายมากกว่า 15 ล้านเล่มทั่วโลก วิดีโอในตำนานนี้กำกับโดยไซมอน เวสต์ ซึ่งต่อมาได้สร้างภาพยนตร์ฮอลลีวูดชื่อดังอย่าง Con Air, Lara Croft – Tomb Raider และ The Expendables 2 วิดีโอผ่านยอดดู YouTube ทะลุ 1 พันล้านครั้งในวันที่ 28 กรกฎาคม 2021 https://RickAstley.lnk.to/TwitterID nInstagram: https://RickAstley.lnk.to/InstagramID nเว็บไซต์: https://RickAstley.lnk.to/storeID nTikTok: https://RickAstley.lnk.to/TikTokIDnnListen ถึง Rick Astley:nSpotify: https://RickAstley.lnk.to/SpotifyID nApple Music: https://RickAstley.lnk.to/AppleMusicID nAmazon เพลง: https://RickAstley.lnk.to/AmazonMusicID nDeezer: https:// /RickAstley.lnk.to/DeezerID nnLyrics:nเราไม่ใช่คนแปลกหน้าสำหรับความรัก คุณรู้กฎเกณฑ์ และทำอย่างนั้น InA ความมุ่งมั่นอย่างเต็มที่คือสิ่งที่ฉันคิดไว้ คุณจะไม่ได้รับสิ่งนี้จากผู้ชายคนอื่น ฉันแค่อยากจะบอกคุณว่าฉันรู้สึกอย่างไร ต้อง ทำให้เธอเข้าใจ จะไม่ยอมแพ้ จะไม่ปล่อยให้เธอผิดหวัง จะไม่วิ่งหนี และทิ้งเธอไป จะไม่ทำให้เธอร้องไห้ จะไม่บอกลา จะไม่โกหก และทำร้ายเธอ เรารู้จักกันมานาน หัวใจเธอเจ็บปวดแต่เธออายเกินกว่าจะพูด ข้างในเราทั้งคู่รู้ว่าเกิดอะไรขึ้น เรารู้จักเกมนี้และเราจะเล่นมัน และถ้าคุณถามฉันว่าฉันรู้สึกอย่างไร อย่าบอกฉันว่าคุณตาบอดเกินกว่าจะมองเห็นได้ ไม่มีวันยอมแพ้ ไม่มีวันทำให้คุณผิดหวัง ไม่มีวันวิ่งไปรอบๆ และ ทะเลทรายคุณจะไม่มีวันทำให้คุณร้องไห้ไม่เคยจะบอกลาจะไม่โกหกและทำร้ายคุณ#RickAstley #NeverGonnaGiveYouUp #WheneverYouNeedSomebody #OfficialMusicVideo", "id": "dQw4w9WgXcQ", "keywords": ["rick astley", "Never Gonna Give You Up" "," nggyu , "จะไม่มีวันยอมแพ้เนื้อเพลง" , "rick rolled", "Rick Roll", "rick astley Official", "rickrolled", "เพลงของ Fortnite", "งานของ Fortnite", "การเต้นรำของ Fortnite", "fortnite จะไม่มีวันยอมแพ้", "rick roll", "rickrolling", "rick rolling", "จะไม่มีวันยอมแพ้", "เพลงยุค 80", "rick astley new", "วิดีโอแอนิเมชัน", "rickroll" ,"เพลงมีม", "เนื้อเพลงจะไม่ยอมแพ้", "Rick Astley 2022", "จะไม่ทำให้คุณผิดหวัง", "แอนิเมชัน", "rick rolls 2022", "จะไม่ยอมแพ้คาราโอเกะ" ], "ความยาว": 212, "publish_date": null, "ความละเอียด": ["1080p", "720p", "480p", "360p", "240p", "144p" ], "คำบรรยาย": ["en"], "thumbnail_url": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg", "title": "Rick Astley - Never Gonna Give You Up ( มิวสิกวิดีโออย่างเป็นทางการ)", "url": {"audio": { "128kbps": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUez pJahzv8S&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D% 3D&mh=7c&mm=31%2C29&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&siu=1&bui=AXLXGFTLtpYeBi-WkfbOrD6x11PgTTzzR3XccdPZF tz4stuPKtFQJJZUbJtbt6KJJdElaNlI6w&spc=54MbxZ-8cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuzECw&vprv=1&svpuc=1&mime=audio%2Fmp4&ns = LcPciQPCIlyTAh4bUR1Ry3oQ&rqh=1&gir=yes&clen=3433605&dur=212.091&lmt=1717047821006373&mt=1727598776&fvip=4&keepalive=yes&fexp=51299152%2C513007 60&c=WEB&sefc=1&txp=4532434&n=PBkHSDz29n0qdg&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui %2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlG wVYx5b6wKFXGaJnWz5hPoyu2V1jAiBX3ZHpSl-MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&หม้อ=MnRLRTG8kBazMEt9RGwvFceBv40KENnpHtlDrguGDKni7A-azrTC0L_GYy7Pz -fH6mqHFsS7CmHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKRXOkQFbgSjNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA%3D%3D&sig=AJfQdSswRQIhALzVUs_1ZBhAU4vl4-_gWy8D_ IuAVQZJzFanrawDMKOsAiAGBw-Q385K5JzdWj80j9eKH3yKDR0xsKxZTyKPU2Ubkg%3D%3D", "160kbps": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUez pJahzv8S&itag=251&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D% 3D&mh=7c&mm=31%2C29&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&siu=1&bui=AXLXGFTLtpYeBi-WkfbOrD6x11PgTTzzR3XccdPZF tz4stuPKtFQJJZUbJtbt6KJJdElaNlI6w&spc=54MbxZ-8cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuzECw&vprv=1&svpuc=1&mime=audio%2Fwebm&ns = LcPciQPCIlyTAh4bUR1Ry3oQ&rqh=1&gir=yes&clen=3437753&dur=212.061&lmt=1717047822556748&mt=1727598776&fvip=4&keepalive=yes&fexp=51299152%2C513007 60&c=WEB&sefc=1&txp=4532434&n=PBkHSDz29n0qdg&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui %2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlG wVYx5b6wKFXGaJnWz5hPoyu2V1jAiBX3ZHpSl-MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&หม้อ=MnRLRTG8kBazMEt9RGwvFceBv40KENnpHtlDrguGDKni7A-azrTC0L_GYy7Pz -fH6mqHFsS7CmHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKRXOkQFbgSjNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA%3D%3D&sig=AJfQdSswRAIgRgmVXNz6GXZTa8wFsnP1g7V TKkAinxQ2MeL4L7_PpUUCIHgo1DpARUjGV3QpFS06_Q9xdzrUmYnQWyWm0VhX-HFS", "50kbps": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUezp Jahzv8S&itag=249&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D% 3D&mh=7c&mm=31%2C29&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&siu=1&bui=AXLXGFTLtpYeBi-WkfbOrD6x11PgTTzzR3XccdPZF tz4stuPKtFQJJZUbJtbt6KJJdElaNlI6w&spc=54MbxZ-8cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuzECw&vprv=1&svpuc=1&mime=audio%2Fwebm&ns = LcPciQPCIlyTAh4bUR1Ry3oQ&rqh=1&gir=yes&clen=1232413&dur=212.061&lmt=1717047819209140&mt=1727598776&fvip=4&keepalive=yes&fexp=51299152%2C513007 60&c=WEB&sefc=1&txp=4532434&n=PBkHSDz29n0qdg&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui %2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlG wVYx5b6wKFXGaJnWz5hPoyu2V1jAiBX3ZHpSl-MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&หม้อ=MnRLRTG8kBazMEt9RGwvFceBv40KENnpHtlDrguGDKni7A-azrTC0L_GYy7Pz -fH6mqHFsS7CmHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKRXOkQFbgSjNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA%3D%3D&sig=AJfQdSswRgIhANYw5Elp9cly-pk9fZtviQxozUwS bmeyiPSX7xxOHywGAiEAoHiFDUhUA-S4m-WjPNnlnSXp65opUramacG4gcucmFg%3D", "70kbps": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUezp Jahzv8S&itag=250&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D% 3D&mh=7c&mm=31%2C29&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&siu=1&bui=AXLXGFTLtpYeBi-WkfbOrD6x11PgTTzzR3XccdPZF tz4stuPKtFQJJZUbJtbt6KJJdElaNlI6w&spc=54MbxZ-8cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuzECw&vprv=1&svpuc=1&mime=audio%2Fwebm&ns = LcPciQPCIlyTAh4bUR1Ry3oQ&rqh=1&gir=yes&clen=1630086&dur=212.061&lmt=1717047822840442&mt=1727598776&fvip=4&keepalive=yes&fexp=51299152%2C513007 60&c=WEB&sefc=1&txp=4532434&n=PBkHSDz29n0qdg&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui %2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlG wVYx5b6wKFXGaJnWz5hPoyu2V1jAiBX3ZHpSl-MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&หม้อ=MnRLRTG8kBazMEt9RGwvFceBv40KENnpHtlDrguGDKni7A-azrTC0L_GYy7Pz -fH6mqHFsS7CmHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKRXOkQFbgSjNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA%3D%3D&sig=AJfQdSswRAIgcZBnQIuSU46Et4rVk1EP96LN1 2X6zEturr49Dt3IdtgCICaL6e5X_7qoN782XgA94aCWl9APN7sqdpZDfnSQ3n4a" }, "วิดีโอ": { "360p": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUezp Jahzv8S&itag=18&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D% 3D&mh=7c&mm=31%2C29&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&siu=1&bui=AXLXGFRb9LWg32JPSnGMKJTLm8K3ulHeoFqy6jW 98J3ow17XhWM6hHiFPFeuDi2q4X9h4FbCSw&spc=54MbxZ-_cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuz0DmJD&vprv=1&svpuc=1&mime=video%2Fmp4&ns =8KIxDqAhSq857Jj0EsIv_rAQ&rqh= 1&cnr=14&ratebypass=yes&dur=212.091&lmt=1717051812678016&mt=1727598776&fvip=4&fexp=51299152%2C51300760&c=WEB&sefc=1&txp=4538434&n=5BzkN_PgDU fS4g&สปารัม=หมดอายุ%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui%2Cspc%2Cvprv %2Csvpuc%2Cmime%2Cns%2Crqh%2Ccnr%2Cratebypass%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlGwVYx5b6wKFXGa JnWz5hPoyu2V1jAiBX3ZHpSl-MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&pot=MnRLRTG8kBazMEt9RGwvFceBv40KENnpHtlDrguGDKni7A-azrTC0L_GYy7Pz-fH6mqHFsS7C mHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKRXOkQFbgSjNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA %3D%3D&sig=AJfQdSswRAIgfjB7dIm2WxtJENp3UQMt-R6AOxAG42tSR_R8AY1VOjQCIHZTT43adN0Wy7XAicHL3yPavg78sous0M4orEjRw98v" - }, "จำนวนการดู": 1576357050, "watch_url": "https://youtube.com/watch?v=dQw4w9WgXcQ"}
200 OK
: ข้อมูลเมตาของวิดีโอ
400 Bad Request
: URL ไม่ถูกต้องหรือพารามิเตอร์หายไป
500 Internal Server Error
: ข้อผิดพลาดฝั่งเซิร์ฟเวอร์
โพสต์ /download
คำอธิบาย: ดาวน์โหลดเนื้อหา YouTube ด้วยความละเอียดสูงสุดที่มีอยู่
เนื้อหาคำขอ:
{ "url": "https://youtube.com/watch?v=dQw4w9WgXcQ", "คำบรรยาย": {"burn": true,"lang": "en" }, "ลิงก์": false}
ตัวอย่างการตอบกลับ (ดาวน์โหลดไฟล์):
หาก link
เป็น false
:
คำตอบจะเป็นการดาวน์โหลดไฟล์
หาก link
เป็น true
:
{ "download_link": "http://example.com/temp_file/temp_Python_Tutorial_for_Beginners.mp4"}
200 OK
: ดาวน์โหลดลิงค์หรือไฟล์
400 Bad Request
: URL หรือพารามิเตอร์ไม่ถูกต้อง
500 Internal Server Error
: ข้อผิดพลาดฝั่งเซิร์ฟเวอร์
POST /download/
คำอธิบาย: ดาวน์โหลดเนื้อหา YouTube ด้วยความละเอียดที่กำหนด
เนื้อหาคำขอ:
{ "url": "https://youtube.com/watch?v=dQw4w9WgXcQ", "บิตเรต": "128kbps", "คำบรรยาย": {"เบิร์น": จริง,"lang": "en" }, "ลิงก์": false}
ตัวอย่างการตอบกลับ (ดาวน์โหลดไฟล์):
หาก link
เป็น false
:
คำตอบจะเป็นการดาวน์โหลดไฟล์
หาก link
เป็น true
:
{ "download_link": "http://example.com/temp_file/temp_Python_Tutorial_360p.mp4"}
200 OK
: ดาวน์โหลดลิงค์หรือไฟล์
400 Bad Request
: ความละเอียด บิตเรต หรือ URL ไม่ถูกต้อง
500 Internal Server Error
: ข้อผิดพลาดฝั่งเซิร์ฟเวอร์
โพสต์ /download_audio
คำอธิบาย: ดาวน์โหลดเสียง YouTube ด้วยคุณภาพสูงสุด
เนื้อหาคำขอ:
{ "url": "https://youtube.com/watch?v=dQw4w9WgXcQ", "ลิงก์": false}
ตัวอย่างการตอบกลับ (ดาวน์โหลดไฟล์):
หาก link
เป็น false
:
คำตอบจะเป็นการดาวน์โหลดไฟล์
หาก link
เป็น true
:
{ "download_link": "http://example.com/temp_file/temp_Python_Tutorial.mp3"}
200 OK
: ดาวน์โหลดลิงค์หรือไฟล์
400 Bad Request
: URL ไม่ถูกต้อง
500 Internal Server Error
: ข้อผิดพลาดฝั่งเซิร์ฟเวอร์
POST /download_audio/
คำอธิบาย: ดาวน์โหลดเสียง YouTube ด้วยบิตเรตที่ระบุ
เนื้อหาคำขอ:
{ "url": "https://youtube.com/watch?v=dQw4w9WgXcQ", "ลิงก์": false}
ตัวอย่างการตอบกลับ (ดาวน์โหลดไฟล์):
หาก link
เป็น false
:
คำตอบจะเป็นการดาวน์โหลดไฟล์
หาก link
เป็น true
:
{ "download_link": "http://example.com/temp_file/temp_Python_Tutorial_48kbps.mp3"}
200 OK
: ดาวน์โหลดลิงค์หรือไฟล์
400 Bad Request
: บิตเรตหรือ URL ไม่ถูกต้อง
500 Internal Server Error
: ข้อผิดพลาดฝั่งเซิร์ฟเวอร์
รับ /captions/
คำอธิบาย: ดึงคำอธิบายสำหรับวิดีโอ YouTube
พารามิเตอร์การค้นหา:
url
: URL ของวิดีโอ YouTube
คำขอตัวอย่าง:
รับ /captions/en?url=https://youtube.com/watch?v=dQw4w9WgXcQ
ตัวอย่างคำตอบ:
{ "caption": "โดยปกติแล้วเด็กๆ ของฉันต่างหากที่ทำข้าวของพัง และฉันเป็นคนซ่อมมันแต่เมื่อมีการกัดกร่อนในน้ำหล่อเย็นในสระน้ำ DIY ของฉัน", "caption_json": [ { "duration": 5.679, "start": 0.12, "text": "โดยปกติแล้วเป็นลูกๆ ของฉันที่ทำข้าวของพังและ"}, { "duration": 5.919, "start": 2.72, "text": "ฉันเป็นคนแก้ไข แต่เมื่อไร"}, { "duration": 6.201, "start": 5.799, "text": "การกัดกร่อนในการระบายความร้อนด้วยน้ำในสระน้ำ DIY ของฉัน"} ], "ไฟล์": "http://youtube-dl-api.frii.site/temp_file/I%20broke%20my%20son's%20gaming%20PC%20and%20now%20I%E2%80%99m%20making%20him %20fix%20it.srt", "lang": "ภาษาอังกฤษ (สร้างอัตโนมัติ)", "lang_code": "en"}
200 OK
: ข้อมูลคำบรรยาย
400 Bad Request
: URL หรือรหัสภาษาไม่ถูกต้อง
500 Internal Server Error
: ข้อผิดพลาดฝั่งเซิร์ฟเวอร์
รับ /temp_file/
คำอธิบาย: ดึงไฟล์ชั่วคราว
พารามิเตอร์:
filename
: ชื่อของไฟล์
คำขอตัวอย่าง:
รับ /temp_file/temp_Python_Tutorial_for_Beginners.mp4
ตัวอย่างคำตอบ:
หากมีไฟล์อยู่ การตอบกลับจะเป็นการดาวน์โหลดไฟล์
หากไม่มีไฟล์:
{ "ข้อผิดพลาด": "ไม่พบไฟล์"}
200 OK
: ดาวน์โหลดไฟล์
404 Not Found
: ไม่พบไฟล์
หากต้องการเรียกใช้ API ให้ใช้:
หลาม main.py
การล้างไฟล์ชั่วคราว: แอปพลิเคชันกำหนดเวลางานเพื่อล้างไฟล์ชั่วคราวที่เก่ากว่า 24 ชั่วโมง
ตรวจสอบ app.log
เพื่อดูข้อความแสดงข้อผิดพลาดโดยละเอียด
ตรวจสอบให้แน่ใจว่า TEMP_DIR
มีสิทธิ์ที่เหมาะสม
ตรวจสอบ URL และพารามิเตอร์ของ YouTube ในคำขอ API
โครงการนี้ได้รับอนุญาตภายใต้ใบอนุญาต AGPL-3 ดูไฟล์ LICENSE
สำหรับรายละเอียด