öncelikle bu kütüphaneleri kurmanız gerekmektedir
pip install google-auth google-auth-oauthlib google-auth-httplib2
pip install google-api-python-clientKütüphaneleri kurduktan sonra bu kodu youtube.py olarak kaydedin.
import os
import google.oauth2.credentials
from google.auth.transport.requests import Request
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient.discovery import build
import googleapiclient.errors
# Bu fonksiyon, Google API'ye erişim için yetkilendirme sağlar
def get_authenticated_service():
creds = None
# Erişim tokenlarını diskte depolamak için dosya yolu
token_path = 'token.json'
# Eğer daha önce yetkilendirme yapılmışsa, onu yükle
if os.path.exists(token_path):
creds = google.oauth2.credentials.Credentials.from_authorized_user_file(token_path)
# Token geçerli değilse veya yoksa, kullanıcıyı yetkilendir
if not creds or not creds.valid:
if creds and creds.expired and creds.refresh_token:
creds.refresh(Request())
else:
flow = InstalledAppFlow.from_client_secrets_file(
'client_secrets.json',
['https://www.googleapis.com/auth/youtube.upload']
)
creds = flow.run_local_server(port=0)
# Yetkilendirme bilgilerini diske kaydet
with open(token_path, 'w') as token:
token.write(creds.to_json())
# Yetkilendirilmiş bir YouTube servisi döndür
return build('youtube', 'v3', credentials=creds)
def upload_video(youtube, file, title, description):
request_body = {
'snippet': {
'title': title,
'description': description,
},
'status': {
'privacyStatus': 'public' # Video'nun gizlilik durumu: 'public', 'private', veya 'unlisted'
}
}
# Video yükleme isteği yap
try:
response = youtube.videos().insert(
part='snippet,status',
body=request_body,
media_body=file
).execute()
video_id = response['id']
print(f"Video başarıyla yüklendi. Video ID: {video_id}")
except googleapiclient.errors.HttpError as e:
print(f"Hata: {e}")
return None
# Google API'ye erişim için yetkilendirilmiş bir servis oluştur
youtube_service = get_authenticated_service()
# Yüklemek istediğiniz video dosyasının yolu
video_file_path = 'video.mp4'
# Videoyu yükle
upload_video(
youtube_service,
video_file_path,
title='Yüklediğiniz Video Başlığı',
description='Yüklediğiniz Video Açıklaması'
)kodu kullanmanız için google hesabınıza girerek Oauth token oluşturmaniz gerekmektedir. eğer bilmiyorsanı bu video izleyerek yapabilirsiniz.https://www.youtube.com/watch?v=aFwZgth790Q&t=1229s
oluşturdugunuz Oauth oken dosyasını indirip ismini "client_secrets.json" olarak değiştirin youtube.py olan dosyanın içine koyun ve kodunuzu çalişirip google sayfası açılacaktır yetki vereceksiniz. artik sizde youtube kanaliniza girmeden videolarınız otomatik bir şekilde yükleyebileceksiniz.