Integration of Youtube API with fetching results with updated intervals supporting multiple search queries
How it works:-
- User registers the search queries. For eg 'football'.
- The registerd queries are fetched from Youtube Api at regular inteval and update the database.
- User can view the queries with the order of published video date with support of pagination and also videos related to a particular search-query registered.
How to use:-
- Make python virtualenv
- git clone https://github.com/savish28/Querytube.git
- cd Querytube
- pip install -r requirements.txt
- python manage.py makemigrations
- python manage.py migrate
- python manage.py runserver
- python manage.py process_tasks
- To view the queries registered Get request - http://localhost:8000/api/register/
- To register a search query Post request - http://localhost:8000/api/register/ Input Data - {"query" : "football"}
- To view videos Request type - GET http://localhost:8000/api/video/ Get params supported- 'page' , 'query' 'page' will contain the page number 'query' will contain the query_id to view the results related to a single search query Not providing 'query' would show the results of all search queries registerd with descending published dates
- Tasks status is seen in the terminal in which python manage.py process_tasks is executed
How to admin use:-
- python manage.py createsuperuser
- Login to http://localhost:8000/admin/
- All the models/users/task info are stated here
Additional Features:-
- Supports multiple keys for Youtube API if one of them exhausts daily limit.
- Django Rest Framework Dashboard to view Api requests