https://github.com/profanitas/ytsapi
YouTube Transcribe API for The Abuse Project
https://github.com/profanitas/ytsapi
python-library python3 theabuseproject video-downloader youtube-api youtube-downloader
Last synced: 20 days ago
JSON representation
YouTube Transcribe API for The Abuse Project
- Host: GitHub
- URL: https://github.com/profanitas/ytsapi
- Owner: profanitas
- Created: 2019-09-17T13:23:30.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-12-20T09:37:59.000Z (over 5 years ago)
- Last Synced: 2025-04-08T02:49:53.921Z (20 days ago)
- Topics: python-library, python3, theabuseproject, video-downloader, youtube-api, youtube-downloader
- Language: Python
- Size: 14.6 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# YTSAPI
YTSAPI (YouTube Transcribe API) for **[The Abuse Project](https://github.com/theabuseproject)** is a python API (Application Programming Interface) which allows you to get the transcript/subtitle for a given YouTube video in a nice list consisting of dictionaries. It also works for videos which have automatically generated subtitles. It does not use any _hacky mechanisms_.
## Install
For using this library in your project, simple use `pip` to install the module.
```
pip install ytsapi
```The module published is in it's early stage as of now, as it's being used internally in **The Abuse Project**. If you want to develop it further, you'll have to use this source repository.
```
git clone https://github.com/theabuseproject/YTSAPI.git
```After cloning, install the dependencies using pip,
```
pip install -r requirements.txt
```
## UsageThe implemented API class can be found under `ytsapi/ytsapi.py`.
```python
import ytsapi
ytsapi.YTSAPI.get_transcript("Youtube Video ID")
```#### Example Usage
#### Obtaining transcript of a YouTube video
```python
>>> import ytsapi
>>> video = 'http://www.youtube.com/watch?v=BaW_jenozKc'
>>> video_id = video.split('?v=')[1]
>>> video_subtitles = ytsapi.YTSAPI.get_transcript(video_id)
>>> print(video_subtitles)
[{'text': 'This a test video\nfor youtube-dl', 'start': 0.26, 'duration': 3.33}, {'text': 'For more information\ncontact [email protected]', 'start': 3.59, 'duration': 6.08}]
>>>
>>> type(video_subtitles)>>> type(video_subtitles[0])
>>>
```#### Downloading a YouTube video
```python
>>> import ytsapi
>>> ytsapi.YTSAPI.get_video('BaW_jenozKc')
YoutubeDL - Starting the download (BaW_jenozKc)
[youtube] BaW_jenozKc: Downloading webpage
[youtube] BaW_jenozKc: Downloading video info webpage
WARNING: Unable to extract video title
[download] BaW_jenozKc.mp4 has already been downloaded
[download] 100% of 1.74MiB
[youtube] BaW_jenozKc: Downloading webpage
[youtube] BaW_jenozKc: Downloading video info webpage
WARNING: Unable to extract video title
[download] BaW_jenozKc.mp4 has already been downloaded
[download] 100% of 1.74MiB
YoutubeDL - Writing video in current working directory.
YoutubeDL - Done.
>>>
```