Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit e56e82d

Browse files
Merge pull request #133 from FatBobGo/master
Refactor OpenAI client initialization and update transcript fetching method
2 parents a1f00cb + 017dbbf commit e56e82d

File tree

1 file changed

+16
-9
lines changed

1 file changed

+16
-9
lines changed

‎web-scraping/youtube-transcript-summarizer/youtube_transcript_summarizer.py‎

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import os
2-
import re
2+
import sys
33
import nltk
44
import pytube
5-
import youtube_transcript_api
65
from youtube_transcript_api import YouTubeTranscriptApi
76
from nltk.corpus import stopwords
87
from nltk.tokenize import sent_tokenize, word_tokenize
@@ -21,11 +20,17 @@
2120
nltk.download('punkt', quiet=True)
2221
nltk.download('stopwords', quiet=True)
2322

24-
# Initialize OpenAI client
25-
client = OpenAI(
26-
base_url="https://openrouter.ai/api/v1",
27-
api_key="<api_key>", # Add your OpenRouter API key here
28-
)
23+
# Initialize OpenAI client from environment variable
24+
# Expect the OpenRouter API key to be provided via OPENROUTER_API_KEY
25+
api_key = os.getenv("OPENROUTER_API_KEY")
26+
if not api_key:
27+
print(Fore.RED + "Error: OPENROUTER_API_KEY environment variable is not set or is still the placeholder ('<api_key>').")
28+
sys.exit(1)
29+
else:
30+
client = OpenAI(
31+
base_url="https://openrouter.ai/api/v1",
32+
api_key=api_key,
33+
)
2934

3035
def extract_video_id(youtube_url):
3136
"""Extract the video ID from a YouTube URL."""
@@ -48,8 +53,10 @@ def extract_video_id(youtube_url):
4853
def get_transcript(video_id):
4954
"""Get the transcript of a YouTube video."""
5055
try:
51-
transcript = YouTubeTranscriptApi.get_transcript(video_id)
52-
return ' '.join([entry['text'] for entry in transcript])
56+
youtube_transcript_api = YouTubeTranscriptApi()
57+
fetched_transcript = youtube_transcript_api.fetch(video_id)
58+
full_transcript = " ".join([snippet.text for snippet in fetched_transcript.snippets])
59+
return full_transcript.strip()
5360
except Exception as e:
5461
return f"Error retrieving transcript: {str(e)}."
5562

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /