blob: 0525fed6d7b36a16aa63831d2889a442b772273d [file] [log] [blame]
:py:mod:`airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3`
====================================================================================
.. py:module:: airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3
.. autoapi-nested-parse::
This is a more advanced example dag for using `GoogleApiToS3Operator` which uses xcom to pass data between
tasks to retrieve specific information about YouTube videos:
First it searches for up to 50 videos (due to pagination) in a given time range
(YOUTUBE_VIDEO_PUBLISHED_AFTER, YOUTUBE_VIDEO_PUBLISHED_BEFORE) on a YouTube channel (YOUTUBE_CHANNEL_ID)
saves the response in S3 + passes over the YouTube IDs to the next request which then gets the information
(YOUTUBE_VIDEO_FIELDS) for the requested videos and saves them in S3 (S3_DESTINATION_KEY).
Further information:
YOUTUBE_VIDEO_PUBLISHED_AFTER and YOUTUBE_VIDEO_PUBLISHED_BEFORE needs to be formatted
``YYYY-MM-DDThh:mm:ss.sZ``.
See https://developers.google.com/youtube/v3/docs/search/list for more information.
YOUTUBE_VIDEO_PARTS depends on the fields you pass via YOUTUBE_VIDEO_FIELDS. See
https://developers.google.com/youtube/v3/docs/videos/list#parameters for more information.
YOUTUBE_CONN_ID is optional for public videos. It does only need to authenticate when there are private videos
on a YouTube channel you want to retrieve.
Module Contents
---------------
Functions
~~~~~~~~~
.. autoapisummary::
airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3.transform_video_ids
Attributes
~~~~~~~~~~
.. autoapisummary::
airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3.YOUTUBE_CHANNEL_ID
airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3.YOUTUBE_VIDEO_PUBLISHED_AFTER
airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3.YOUTUBE_VIDEO_PUBLISHED_BEFORE
airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3.S3_BUCKET_NAME
airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3.YOUTUBE_VIDEO_PARTS
airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3.YOUTUBE_VIDEO_FIELDS
airflow.providers.amazon.aws.example_dags.example_google_api_youtube_to_s3.task_video_ids_to_s3
.. py:data:: YOUTUBE_CHANNEL_ID
.. py:data:: YOUTUBE_VIDEO_PUBLISHED_AFTER
.. py:data:: YOUTUBE_VIDEO_PUBLISHED_BEFORE
.. py:data:: S3_BUCKET_NAME
.. py:data:: YOUTUBE_VIDEO_PARTS
.. py:data:: YOUTUBE_VIDEO_FIELDS
.. py:function:: transform_video_ids(**kwargs)
.. py:data:: task_video_ids_to_s3