youngtsai commited on
Commit
a028c47
1 Parent(s): a69bace

upload_img_directly(service, file_name, folder_id, screenshot_path)

Browse files
Files changed (1) hide show
  1. app.py +13 -2
app.py CHANGED
@@ -123,6 +123,12 @@ def download_file_as_string(service, file_id):
123
  content = fh.read().decode('utf-8')
124
  return content
125
 
 
 
 
 
 
 
126
  def process_file(file):
127
  # 读取文件
128
  if file.name.endswith('.csv'):
@@ -195,10 +201,8 @@ def process_youtube_link(link):
195
  transcript = None
196
  exists, file_id = check_file_exists(service, folder_id, file_name)
197
  if not exists:
198
- # 获取逐字稿
199
  transcript = YouTubeTranscriptApi.get_transcript(video_id, languages=['zh-TW'])
200
  transcript_text = json.dumps(transcript, ensure_ascii=False, indent=2)
201
- # 上传到Google Drive
202
  upload_content_directly(service, file_name, folder_id, transcript_text)
203
  print("逐字稿已上传到Google Drive")
204
  else:
@@ -280,6 +284,13 @@ def screenshot_youtube_video(youtube_id, snapshot_sec):
280
  screenshot_path = f'{OUTPUT_PATH}/{youtube_id}_{snapshot_sec}.jpg'
281
  video.save_frame(screenshot_path, snapshot_sec)
282
 
 
 
 
 
 
 
 
283
  return screenshot_path
284
 
285
  def get_screenshot_from_video(video_link, start_time):
 
123
  content = fh.read().decode('utf-8')
124
  return content
125
 
126
+ def upload_img_directly(service, file_name, folder_id, file_path):
127
+ file_metadata = {'name': file_name, 'parents': [folder_id]}
128
+ media = MediaFileUpload(file_path, mimetype='image/jpeg')
129
+ file = service.files().create(body=file_metadata, media_body=media, fields='id').execute()
130
+ print(f"File ID: {file.get('id')}")
131
+
132
  def process_file(file):
133
  # 读取文件
134
  if file.name.endswith('.csv'):
 
201
  transcript = None
202
  exists, file_id = check_file_exists(service, folder_id, file_name)
203
  if not exists:
 
204
  transcript = YouTubeTranscriptApi.get_transcript(video_id, languages=['zh-TW'])
205
  transcript_text = json.dumps(transcript, ensure_ascii=False, indent=2)
 
206
  upload_content_directly(service, file_name, folder_id, transcript_text)
207
  print("逐字稿已上传到Google Drive")
208
  else:
 
284
  screenshot_path = f'{OUTPUT_PATH}/{youtube_id}_{snapshot_sec}.jpg'
285
  video.save_frame(screenshot_path, snapshot_sec)
286
 
287
+ # 上传截图到Google Drive
288
+ service = init_drive_service()
289
+ parent_folder_id = '1GgI4YVs0KckwStVQkLa1NZ8IpaEMurkL' # youtube逐字稿圖檔的ID
290
+ folder_id = create_folder_if_not_exists(service, youtube_id, parent_folder_id)
291
+ file_name = f'{youtube_id}_{snapshot_sec}.jpg'
292
+ upload_img_directly(service, file_name, folder_id, screenshot_path)
293
+
294
  return screenshot_path
295
 
296
  def get_screenshot_from_video(video_link, start_time):