error handling and logging for push_video

This commit is contained in:
Barbara Miller 2024-04-19 14:00:17 -07:00
parent 376f3139ce
commit 97143e2b0e

View File

@ -25,9 +25,10 @@ import tempfile
import urlcanon
import os
import json
import doublethink
import datetime
import threading
import traceback
import doublethink
thread_local = threading.local()
@ -201,23 +202,26 @@ def _build_youtube_dl(worker, destdir, site, page):
# transfer, which warcprox currently rejects
extra_headers = dict(site.extra_headers())
extra_headers["content-length"] = size
request, response = worker._warcprox_write_record(
warcprox_address=worker._proxy_for(site),
url=url,
warc_type="resource",
content_type=mimetype,
payload=f,
extra_headers=extra_headers,
)
# consulted by _remember_videos()
ydl.pushed_videos.append(
{
"url": url,
"response_code": response.code,
"content-type": mimetype,
"content-length": size,
}
)
try:
request, response = worker._warcprox_write_record(
warcprox_address=worker._proxy_for(site),
url=url,
warc_type="resource",
content_type=mimetype,
payload=f,
extra_headers=extra_headers,
)
# consulted by _remember_videos()
ydl.pushed_videos.append(
{
"url": url,
"response_code": response.code,
"content-type": mimetype,
"content-length": size,
}
)
except:
traceback.print_exc()
def maybe_heartbeat_site_last_claimed(*args, **kwargs):
# in case yt-dlp takes a long time, heartbeat site.last_claimed