Ինչպես ստանալ YouTube-ի սղագրությունը API-ի միջոցով (curl, Python, JavaScript)
Ստացիր YouTube-ի ցանկացած հանրային տեսանյութի սղագրությունը մեկ HTTP հարցմամբ։ Աշխատող օրինակներ curl-ով, Python-ով և JavaScript-ով, ելքի ձևաչափեր, սխալի կոդեր և արժեք։

YouTube-ի սղագրությունը API-ի միջոցով ստանալու համար ուղարկիր մեկ HTTP հարցում՝ տեսանյութի URL-ով կամ ID-ով և API բանալով, և կարդա սղագրությունը պատասխանից։ Այս ուղեցույցը ցույց է տալիս հարցումը curl-ով, Python-ով և JavaScript-ով՝ օգտագործելով sum.video-ի Transcript API-ն, ապա անդրադառնում է ձևաչափերին, սխալներին և արժեքին։
Ինչ է վերադարձնում API-ն
Վերջնակետը վերադարձնում է հանրային YouTube տեսանյութի առկա ենթագրերը՝ լինեն դրանք հեղինակի գրածը, թե YouTube-ի ավտոմատ ստեղծածը։ Այն չի սղագրում ձայնը։ Եթե տեսանյութը ենթագրեր չունի, ենթադրության փոխարեն սխալ ես ստանում (մանրամասները՝ ստորև)։
Հիմնականը.
- Վերջնակետ՝
POST https://sum.video/api/v1/transcript(GET-ն էլ է աշխատում) - Նույնականացում՝ քո բանալին
X-API-Keyվերնագրում կամAuthorization: Bearer <key> - Մուտք՝
urlկամvideo_id - Ոչ պարտադիր
lang(լռելյայնen) - Ոչ պարտադիր
format՝json,textկամsrt
Պատասխանը նաև ասում է ենթագրերի հետքի իրական լեզուն և արդյոք այն ավտոմատ է ստեղծվել, որպեսզի իմանաս, ինչ որակ սպասել։
Քայլ 1. Ստեղծիր API բանալի
Մուտք գործիր և ստեղծիր բանալի API վահանակում (/dashboard/api sum.video-ում)։ Կարող ես ունենալ մինչև 5 ակտիվ բանալի, ինչը հարմար է փորձնական և արտադրական բանալիները առանձնացնելու համար։ Առաջին բանալու հետ գալիս է 10 անվճար կրեդիտ, որը բավական է 5 սղագրության համար, ուստի ստորև ամեն ինչ կարող ես փորձել առանց ծախսի։
Քայլ 2. Ուղարկիր առաջին հարցումդ
curl
curl -X POST https://sum.video/api/v1/transcript \
-H "X-API-Key: $SUMVIDEO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ", "lang": "en", "format": "text"}'
Քանի որ GET-ն էլ է աշխատում, կարող ես փորձել մի սկրիպտից, որը միայն URL-ներ է կառուցում։ Բանալին ավելի լավ է փոխանցել վերնագրում, որպեսզի այն չհայտնվի մատյաններում։
Python
import os
import requests
resp = requests.post(
"https://sum.video/api/v1/transcript",
headers={"X-API-Key": os.environ["SUMVIDEO_API_KEY"]},
json={"video_id": "dQw4w9WgXcQ", "lang": "en", "format": "text"},
timeout=30,
)
if resp.status_code == 404:
print("No captions for this video")
else:
resp.raise_for_status()
print(resp.text)
JavaScript (Node 18+ կամ դիտարկիչ)
const resp = await fetch("https://sum.video/api/v1/transcript", {
method: "POST",
headers: {
"X-API-Key": process.env.SUMVIDEO_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({
video_id: "dQw4w9WgXcQ",
lang: "en",
format: "text",
}),
});
if (resp.status === 404) {
console.log("No captions for this video");
} else if (!resp.ok) {
throw new Error(`Request failed: ${resp.status}`);
} else {
console.log(await resp.text());
}
Բանալին պահիր սերվերում։ Դիտարկիչի կոդում դրված բանալին կարող է պատճենել յուրաքանչյուր ոք, ով կբացի մշակողի գործիքները։
Քայլ 3. Ընտրիր ճիշտ ձևաչափը
| Ձևաչափ | Ինչ ես ստանում | Լավագույնն է |
|---|---|---|
json |
Հատվածներ, յուրաքանչյուրը offset և duration վայրկյաններով |
Ժամանակային նշաններ, հղումներ տեսանյութի որոշակի պահին, բաժանում ըստ ժամանակի |
text |
Պարզ սղագրություն | Հուշումներ, որոնման ինդեքսներ, ամփոփումներ |
srt |
Ենթագրերի ֆայլի բովանդակություն | Տեսանյութի խմբագրիչներ, ենթագրերի գործիքներ |
Եթե նախատեսում ես հղում անել տեսանյութի որևէ պահի, օգտագործիր json և հղումը կառուցիր հատվածի offset-ից։ LLM-ին տալու համար text-ը փոքր է ու պարզ։ Եթե հետո ուզենաս ձեռքով որոնել սղագրության մեջ, տես ինչպես որոնել YouTube տեսանյութի սղագրության մեջ։
Քայլ 4. Ընտրիր լեզուն
lang-ի լռելյայն արժեքը en է։ Սահմանիր քո ուզած լեզուն, օրինակ՝ de կամ es։ Պատասխանը հայտնում է իրականում վերադարձված հետքի լեզուն, ուստի ստուգիր այն՝ ենթադրելու փոխարեն։ Տեսանյութը հաճախ ունի ընդամենը մեկ ենթագրերի հետք, իսկ API-ն վերադարձնում է իրական ենթագրեր, ուստի չի թարգմանում քեզ համար։
Քայլ 5. Մշակիր սխալները
Այս դեպքերը նախատեսիր առաջին օրվանից.
404 no_transcript՝ տեսանյութը ենթագրեր չունի, կամ ուղիղ եթեր է, մասնավոր կամ հեռացված տեսանյութ։ Կրկնելու բան չկա։ Բաց թող այն կամ օգտատիրոջից խնդրիր այլ տեսանյութ։402 budget_exceeded՝ հասել ես քո սահմանած ամսական կրեդիտի սահմանաչափին։ Տես հաջորդ բաժինը։- Արագության սահմանաչափ՝ յուրաքանչյուր բանալի թույլ է տալիս 60 հարցում րոպեում։ Բաշխիր փաթեթային աշխատանքները և դանդաղեցրու, երբ սահմանափակում են։
- Մեր կողմի ձախողումներ՝ կարճ դադարից հետո կրկին փորձիր։ Դրանք ոչինչ չեն արժենում։
Պարզ ցիկլը, որը սերվերի սխալների դեպքում կրկնում է, իսկ 404-ի դեպքում բաց է թողնում, բավարարում է արտադրության կարիքների մեծ մասը։
Որքան արժե
Յուրաքանչյուր սղագրություն արժե 2 կրեդիտ։ Այն հարցումները, որոնք սղագրություն չեն վերադարձնում կամ ձախողվում են sum.video-ի կողմից, ոչինչ չեն արժենում, ուստի 404-ը երբեք չի դատարկում քո մնացորդը։ Մնացորդը կարող ես տեսնել GET /api/v1/credits-ով։
Կրեդիտները վաճառվում են մեկանգամյա փաթեթներով, որոնք երբեք չեն սպառվում.
| Փաթեթ | Գին | Մեկ սղագրության համար |
|---|---|---|
| 100 կրեդիտ | $4.49 | $0.090 |
| 500 կրեդիտ | $13.99 | $0.056 |
| 2,000 կրեդիտ | $37.99 | $0.038 |
| 5,000 կրեդիտ | $74.99 | $0.030 |
Pro բաժանորդները ամեն ամիս ստանում են նաև 100 բոնուսային կրեդիտ։ Ավելի ծանր աշխատանքի համար, օրինակ՝ ամբողջ ալիք բեռնելու, կարդա YouTube-ի սղագրություններ RAG հավելվածի համար մեծ մասշտաբով սցենարը, որն անդրադառնում է ավտոմատ համալրմանը և բյուջեներին։ Տես նաև գները։
Սահմանափակումներ, որ պետք է իմանալ նախքան կառուցելը
- Աշխատում են միայն ենթագրերով տեսանյութերը։ Սա
404 no_transcript-ի հիմնական պատճառն է։ - Ավտոմատ ստեղծված ենթագրերում կարող են սխալներ լինել, մասնավորապես անունների, առոգանության և տեխնիկական եզրույթների մեջ։
- API-ն վերադարձնում է միայն սղագրությունը։ Այն չի ամփոփում։ Եթե սղագրության վրա ամփոփումներ, ժամանակային նշաններ և զրույց ես ուզում, դա անում է YouTube-ի ամփոփիչը, իսկ սղագրության գործիքը մեկ տեսանյութի համար առանց կոդի տարբերակն է։
- Պաշտոնական YouTube Data API-ն այստեղ փոխարինող չէ։ Դրա ենթագրերի ներբեռնման մեթոդը պահանջում է տեսանյութը խմբագրելու թույլտվություն, ուստի նախատեսված է քո սեփական տեսանյութերի համար (Google-ի փաստաթղթեր)։
Աղբյուրներ
Հաճախ տրվող հարցեր
Կարո՞ղ եմ ստանալ YouTube-ի սղագրությունը առանց պաշտոնական YouTube Data API-ի։
Այո։ sum.video-ի Transcript API-ն ընդունում է տեսանյութի URL կամ ID և վերադարձնում առկա ենթագրերը՝ առանց Google Cloud նախագծի կարիքի։ Google-ի սեփական ենթագրերի ներբեռնման մեթոդը պահանջում է տեսանյութը խմբագրելու թույլտվություն, ուստի հարմար է միայն քո սեփական տեսանյութերի համար։
Արդյո՞ք API-ն սղագրում է ենթագրեր չունեցող տեսանյութերը։
Ոչ։ Այն վերադարձնում է YouTube-ի առկա ենթագրերը՝ ձեռքով գրված կամ ավտոմատ ստեղծված։ Ենթագրեր չունեցող տեսանյութերը, ուղիղ եթերները, մասնավոր և հեռացված տեսանյութերը վերադարձնում են 404 no_transcript, և այդ հարցումը ոչինչ չի արժենում։
Որքա՞ն է արժե մեկ սղագրությունը։
2 կրեդիտ մեկ սղագրության համար։ Փաթեթները սկսվում են 100 կրեդիտից՝ $4.49 ($0.090 մեկ սղագրության համար) մինչև 5,000 կրեդիտ՝ $74.99 ($0.030 մեկ սղագրության համար), և կրեդիտները երբեք չեն սպառվում։
Ի՞նչ ելքի ձևաչափեր կան։
json (հատվածներ՝ offset և duration վայրկյաններով), text և srt։ Սահմանիր format դաշտը հարցման մեջ։
Ինչպե՞ս փորձել անվճար։
Քո առաջին API բանալու հետ գալիս է 10 անվճար կրեդիտ, այսինքն՝ 5 սղագրություն։ Pro բաժանորդները դրանից բացի ամեն ամիս ստանում են 100 բոնուսային կրեդիտ։
Առնչվող ընթերցանություն
YouTube-ի սղագրություններ RAG հավելվածի համար մեծ մասշտաբով՝ կրեդիտներ, ավտոմատ համալրում և բյուջեներՄշակողը 10 000 YouTube տեսանյութ բեռնում է RAG հավելվածի մեջ։ Տես ծախսը, արագության սահմանաչափի հաշվարկը և այն, թե ինչպես են ավտոմատ համալրումն ու բյուջեները ծախսը պահում կանխատեսելի։
YouTube-ի սղագրության լավագույն API-ների համեմատություն՝ sum.video, Supadata, Transcribr և Python գրադարանYouTube-ի սղագրություններ կոդով ստանալու չորս եղանակ՝ համեմատված ըստ գնի, սահմանափակումների և հուսալիության՝ sum.video, Supadata, Transcribr և youtube-transcript-api։
Վերջին գրառումները
YouTube-ի սղագրություններ RAG հավելվածի համար մեծ մասշտաբով՝ կրեդիտներ, ավտոմատ համալրում և բյուջեներՄշակողը 10 000 YouTube տեսանյութ բեռնում է RAG հավելվածի մեջ։ Տես ծախսը, արագության սահմանաչափի հաշվարկը և այն, թե ինչպես են ավտոմատ համալրումն ու բյուջեները ծախսը պահում կանխատեսելի։
YouTube-ի սղագրության լավագույն API-ների համեմատություն՝ sum.video, Supadata, Transcribr և Python գրադարանYouTube-ի սղագրություններ կոդով ստանալու չորս եղանակ՝ համեմատված ըստ գնի, սահմանափակումների և հուսալիության՝ sum.video, Supadata, Transcribr և youtube-transcript-api։