色々なところから、継ぎ接ぎ、見様見真似なので、きちんと作動するかは分かりません。
私の環境では上手く行きましたが、10個指定なのに何故か全て取得
また日時は日本時間でないかもしれません。
from googleapiclient.discovery import build
from googleapiclient.errors import HttpError
from datetime import datetime
# APIキーを指定
API_KEY = '自分のAPI_KEY'
# チャンネルIDを指定
CHANNEL_ID = ' チャンネルID'
# YouTube Data APIを使用してビデオリストを取得
youtube = build('youtube', 'v3', developerKey=API_KEY)
videos = []
next_page_token = None
while True:
video_response = youtube.search().list(
part='id,snippet',
channelId=CHANNEL_ID,
type='video',
maxResults=10,
pageToken=next_page_token
).execute()
videos += video_response['items']
next_page_token = video_response.get('nextPageToken')
if not next_page_token:
break
# 公開日でソート
videos.sort(key=lambda x: x['snippet']['publishedAt'], reverse=True)
# 動画情報を取得
for video in videos:
video_title = video['snippet']['title']
upload_date = video['snippet']['publishedAt']
# 動画情報を表示
print(f'{video_title}:{upload_date}')