From 39155ebcc52ba6510b8782ddcf4d957e18776cf7 Mon Sep 17 00:00:00 2001 From: Noah Levitt Date: Mon, 13 Aug 2018 15:40:48 -0700 Subject: [PATCH 1/5] push youtube-dl's stitched up videos to warcprox (no tests yet) --- brozzler/worker.py | 73 ++++++++++++++++++++++++++++++++++++++++------ setup.py | 1 + 2 files changed, 65 insertions(+), 9 deletions(-) diff --git a/brozzler/worker.py b/brozzler/worker.py index 41c98db..7af9ea5 100644 --- a/brozzler/worker.py +++ b/brozzler/worker.py @@ -199,10 +199,64 @@ class BrozzlerWorker: 'IS' if self._proxy_is_warcprox else 'IS NOT') return self._proxy_is_warcprox else: + # I should have commented when I originally wrote this code, but I + # think this works because `site.proxy` is only set when the proxy + # is warcprox return bool(site.proxy or self._warcprox_auto) - def _youtube_dl(self, destdir, site): + class _YoutubeDL(youtube_dl.YoutubeDL): + logger = logging.getLogger(__module__ + "." + __qualname__) + + def get_info_extractor(self, ie_key): + ie = super().get_info_extractor(ie_key) + self.logger.info('youtube-dl using extractor %s', ie) + return ie + + # def process_ie_result( + # ydl_self, ie_result, download=True, extra_info={}): + # ie_result = super().process_ie_result( + # ie_result, download, extra_info) + # return ie_result + + def process_info(ydl_self, info_dict): + _orig__finish_frag_download = youtube_dl.downloader.fragment.FragmentFD._finish_frag_download + def _finish_frag_download(ffd_self, ctx): + _orig__finish_frag_download(ffd_self, ctx) + if self._using_warcprox(site): + try: + import magic + mimetype = magic.from_file( + ctx['filename'], mime=True) + except ImportError as e: + mimetype = 'video/%s' % info_dict['ext'] + ydl_self.logger.warn( + 'guessing mimetype %s because %r', + mimetype, e) + url = 'youtube-dl:%05d:%s' % ( + info_dict['playlist_index'], + info_dict['webpage_url']) + ydl_self.logger.info( + 'pushing %r video stitched-up as %s (%s ' + 'bytes) to warcprox at %s with url %s', + info_dict['format'], mimetype, + ctx['complete_frags_downloaded_bytes'], + self._proxy_for(site), url) + with open(ctx['filename'], 'rb') as f: + # include content-length header to avoid chunked + # transfer, which warcprox currently does not + # accept + # XXX is `ctx['complete_frags_downloaded_bytes']` + # always == `os.path.getsize(ctx['filename'])`? + self._warcprox_write_record( + warcprox_address=self._proxy_for(site), + url=url, warc_type='resource', + content_type=mimetype, payload=f, + extra_headers={'content-length': ctx['complete_frags_downloaded_bytes']}) + + youtube_dl.downloader.fragment.FragmentFD._finish_frag_download = _finish_frag_download + return super().process_info(info_dict) + def ydl_progress(*args, **kwargs): # in case youtube-dl takes a long time, heartbeat site.last_claimed # to prevent another brozzler-worker from claiming the site @@ -236,11 +290,7 @@ class BrozzlerWorker: } if self._proxy_for(site): ydl_opts["proxy"] = "http://{}".format(self._proxy_for(site)) - ## XXX (sometimes?) causes chrome debug websocket to go through - ## proxy. Maybe not needed thanks to hls_prefer_native. - ## # see https://github.com/rg3/youtube-dl/issues/6087 - ## os.environ["http_proxy"] = "http://{}".format(self._proxy_for(site)) - ydl = youtube_dl.YoutubeDL(ydl_opts) + ydl = _YoutubeDL(ydl_opts) if site.extra_headers(): ydl._opener.add_handler(ExtraHeaderAdder(site.extra_headers())) ydl.brozzler_spy = YoutubeDLSpy() @@ -314,9 +364,14 @@ class BrozzlerWorker: # we do whatwg canonicalization here to avoid "" resulting in ProxyError # needs automated test - info = ydl.extract_info(str(urlcanon.whatwg(page.url))) + ie_result = ydl.extract_info(str(urlcanon.whatwg(page.url))) + # ie_result = ydl.extract_info( + # str(urlcanon.whatwg(page.url)), download=False) + # if ie_result.get('_type') in ('playlist', 'multi_video'): + # ie_result = self._ydl_playlist(ie_result) + # else: + # ie_result = process_ie_result(ie_result, download=True) self._remember_videos(page, ydl.brozzler_spy) - # logging.info('XXX %s', json.dumps(info)) if self._using_warcprox(site): info_json = json.dumps(info, sort_keys=True, indent=4) self.logger.info( @@ -576,7 +631,7 @@ class BrozzlerWorker: # using brozzler-worker --proxy, nothing to do but try the # same proxy again next time logging.error( - 'proxy error (site.proxy=%r): %r', site.proxy, e) + 'proxy error (self._proxy=%r)', self._proxy, exc_info=1) except: self.logger.critical("unexpected exception", exc_info=True) finally: diff --git a/setup.py b/setup.py index eeb75c7..db7a56c 100644 --- a/setup.py +++ b/setup.py @@ -75,6 +75,7 @@ setuptools.setup( 'cerberus==1.0.1', 'jinja2', 'cryptography!=2.1.1', # 2.1.1 installation is failing on ubuntu + 'python-magic', ], extras_require={ 'dashboard': ['flask>=0.11', 'gunicorn'], From 33520da8f9d88c7241317bab130cc0666351cbc3 Mon Sep 17 00:00:00 2001 From: Noah Levitt Date: Tue, 14 Aug 2018 15:10:48 -0700 Subject: [PATCH 2/5] move youtube-dl code into separate file --- brozzler/worker.py | 271 ++------------------------------------ brozzler/ydl.py | 322 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 336 insertions(+), 257 deletions(-) create mode 100644 brozzler/ydl.py diff --git a/brozzler/worker.py b/brozzler/worker.py index 7af9ea5..6994be3 100644 --- a/brozzler/worker.py +++ b/brozzler/worker.py @@ -23,92 +23,18 @@ import brozzler import brozzler.browser import threading import time -import youtube_dl import urllib.request import json import PIL.Image import io import socket -import collections import requests import doublethink import tempfile import urlcanon from requests.structures import CaseInsensitiveDict import rethinkdb as r -import datetime -import urllib.parse - -_orig_webpage_read_content = youtube_dl.extractor.generic.GenericIE._webpage_read_content -def _webpage_read_content(self, *args, **kwargs): - content = _orig_webpage_read_content(self, *args, **kwargs) - if len(content) > 20000000: - logging.warn( - 'bypassing youtube-dl extraction because content is ' - 'too large (%s characters)', len(content)) - return '' - return content -youtube_dl.extractor.generic.GenericIE._webpage_read_content = _webpage_read_content - -class ExtraHeaderAdder(urllib.request.BaseHandler): - def __init__(self, extra_headers): - self.extra_headers = extra_headers - self.http_request = self._http_request - self.https_request = self._http_request - - def _http_request(self, req): - for h, v in self.extra_headers.items(): - if h.capitalize() not in req.headers: - req.add_header(h, v) - return req - -class YoutubeDLSpy(urllib.request.BaseHandler): - logger = logging.getLogger(__module__ + "." + __qualname__) - - def __init__(self): - self.reset() - - def _http_response(self, request, response): - txn = { - 'url': request.full_url, - 'method': request.get_method(), - 'status_code': response.code, - 'response_headers': response.headers, - } - self.transactions.append(txn) - return response - - http_response = https_response = _http_response - - def reset(self): - self.transactions = [] - - def final_bounces(self, url): - """ - Resolves redirect chains in self.transactions, returns a list of - Transaction representing the final redirect destinations of the given - url. There could be more than one if for example youtube-dl hit the - same url with HEAD and then GET requests. - """ - redirects = {} - for txn in self.transactions: - # XXX check http status 301,302,303,307? check for "uri" header - # as well as "location"? see urllib.request.HTTPRedirectHandler - if 'location' in txn['response_headers']: - redirects[txn['url']] = txn - - final_url = url - while final_url in redirects: - txn = redirects.pop(final_url) - final_url = urllib.parse.urljoin( - txn['url'], txn['response_headers']['location']) - - final_bounces = [] - for txn in self.transactions: - if txn['url'] == final_url: - final_bounces.append(txn) - - return final_bounces +from . import ydl class BrozzlerWorker: logger = logging.getLogger(__module__ + "." + __qualname__) @@ -204,99 +130,6 @@ class BrozzlerWorker: # is warcprox return bool(site.proxy or self._warcprox_auto) - def _youtube_dl(self, destdir, site): - class _YoutubeDL(youtube_dl.YoutubeDL): - logger = logging.getLogger(__module__ + "." + __qualname__) - - def get_info_extractor(self, ie_key): - ie = super().get_info_extractor(ie_key) - self.logger.info('youtube-dl using extractor %s', ie) - return ie - - # def process_ie_result( - # ydl_self, ie_result, download=True, extra_info={}): - # ie_result = super().process_ie_result( - # ie_result, download, extra_info) - # return ie_result - - def process_info(ydl_self, info_dict): - _orig__finish_frag_download = youtube_dl.downloader.fragment.FragmentFD._finish_frag_download - def _finish_frag_download(ffd_self, ctx): - _orig__finish_frag_download(ffd_self, ctx) - if self._using_warcprox(site): - try: - import magic - mimetype = magic.from_file( - ctx['filename'], mime=True) - except ImportError as e: - mimetype = 'video/%s' % info_dict['ext'] - ydl_self.logger.warn( - 'guessing mimetype %s because %r', - mimetype, e) - url = 'youtube-dl:%05d:%s' % ( - info_dict['playlist_index'], - info_dict['webpage_url']) - ydl_self.logger.info( - 'pushing %r video stitched-up as %s (%s ' - 'bytes) to warcprox at %s with url %s', - info_dict['format'], mimetype, - ctx['complete_frags_downloaded_bytes'], - self._proxy_for(site), url) - with open(ctx['filename'], 'rb') as f: - # include content-length header to avoid chunked - # transfer, which warcprox currently does not - # accept - # XXX is `ctx['complete_frags_downloaded_bytes']` - # always == `os.path.getsize(ctx['filename'])`? - self._warcprox_write_record( - warcprox_address=self._proxy_for(site), - url=url, warc_type='resource', - content_type=mimetype, payload=f, - extra_headers={'content-length': ctx['complete_frags_downloaded_bytes']}) - - youtube_dl.downloader.fragment.FragmentFD._finish_frag_download = _finish_frag_download - return super().process_info(info_dict) - - def ydl_progress(*args, **kwargs): - # in case youtube-dl takes a long time, heartbeat site.last_claimed - # to prevent another brozzler-worker from claiming the site - try: - if site.rr and doublethink.utcnow() - site.last_claimed > datetime.timedelta(minutes=self.SITE_SESSION_MINUTES): - self.logger.debug( - 'heartbeating site.last_claimed to prevent another ' - 'brozzler-worker claiming this site id=%r', site.id) - site.last_claimed = doublethink.utcnow() - site.save() - except: - self.logger.debug( - 'problem heartbeating site.last_claimed site id=%r', - site.id, exc_info=True) - - ydl_opts = { - "outtmpl": "{}/ydl%(autonumber)s.out".format(destdir), - "verbose": False, - "retries": 1, - "logger": logging.getLogger("youtube_dl"), - "nocheckcertificate": True, - "hls_prefer_native": True, - "noprogress": True, - "nopart": True, - "no_color": True, - "progress_hooks": [ydl_progress], - # https://github.com/rg3/youtube-dl/blob/master/README.md#format-selection - # "best: Select the best quality format represented by a single - # file with video and audio." - "format": "best/bestvideo+bestaudio", - } - if self._proxy_for(site): - ydl_opts["proxy"] = "http://{}".format(self._proxy_for(site)) - ydl = _YoutubeDL(ydl_opts) - if site.extra_headers(): - ydl._opener.add_handler(ExtraHeaderAdder(site.extra_headers())) - ydl.brozzler_spy = YoutubeDLSpy() - ydl._opener.add_handler(ydl.brozzler_spy) - return ydl - def _warcprox_write_record( self, warcprox_address, url, warc_type, content_type, payload, extra_headers=None): @@ -318,11 +151,13 @@ class BrozzlerWorker: 'got "%s %s" response on warcprox ' 'WARCPROX_WRITE_RECORD request (expected 204)', response.getcode(), response.reason) + return request, response except urllib.error.HTTPError as e: self.logger.warn( 'got "%s %s" response on warcprox ' 'WARCPROX_WRITE_RECORD request (expected 204)', e.getcode(), e.info()) + return request, None except urllib.error.URLError as e: raise brozzler.ProxyError( 'proxy error on WARCPROX_WRITE_RECORD %s' % url) from e @@ -330,80 +165,6 @@ class BrozzlerWorker: raise brozzler.ProxyError( 'proxy error on WARCPROX_WRITE_RECORD %s' % url) from e - def _remember_videos(self, page, ydl_spy): - if not 'videos' in page: - page.videos = [] - for txn in ydl_spy.transactions: - content_type = txn['response_headers'].get_content_type() - if (content_type.startswith('video/') - # skip manifests of DASH segmented video - - # see https://github.com/internetarchive/brozzler/pull/70 - and content_type != 'video/vnd.mpeg.dash.mpd' - and txn['method'] == 'GET' - and txn['status_code'] in (200, 206)): - video = { - 'blame': 'youtube-dl', - 'url': txn['url'], - 'response_code': txn['status_code'], - 'content-type': content_type, - } - if 'content-length' in txn['response_headers']: - video['content-length'] = int( - txn['response_headers']['content-length']) - if 'content-range' in txn['response_headers']: - video['content-range'] = txn[ - 'response_headers']['content-range'] - logging.debug('embedded video %s', video) - page.videos.append(video) - - def _try_youtube_dl(self, ydl, site, page): - try: - self.logger.info("trying youtube-dl on {}".format(page)) - - with brozzler.thread_accept_exceptions(): - # we do whatwg canonicalization here to avoid "" resulting in ProxyError - # needs automated test - ie_result = ydl.extract_info(str(urlcanon.whatwg(page.url))) - # ie_result = ydl.extract_info( - # str(urlcanon.whatwg(page.url)), download=False) - # if ie_result.get('_type') in ('playlist', 'multi_video'): - # ie_result = self._ydl_playlist(ie_result) - # else: - # ie_result = process_ie_result(ie_result, download=True) - self._remember_videos(page, ydl.brozzler_spy) - if self._using_warcprox(site): - info_json = json.dumps(info, sort_keys=True, indent=4) - self.logger.info( - "sending WARCPROX_WRITE_RECORD request to warcprox " - "with youtube-dl json for %s", page) - self._warcprox_write_record( - warcprox_address=self._proxy_for(site), - url="youtube-dl:%s" % str(urlcanon.semantic(page.url)), - warc_type="metadata", - content_type="application/vnd.youtube-dl_formats+json;charset=utf-8", - payload=info_json.encode("utf-8"), - extra_headers=site.extra_headers()) - except brozzler.ShutdownRequested as e: - raise - except BaseException as e: - if hasattr(e, "exc_info") and e.exc_info[0] == youtube_dl.utils.UnsupportedError: - pass - elif (hasattr(e, "exc_info") - and e.exc_info[0] == urllib.error.HTTPError - and hasattr(e.exc_info[1], "code") - and e.exc_info[1].code == 420): - raise brozzler.ReachedLimit(e.exc_info[1]) - elif (hasattr(e, 'exc_info') - and e.exc_info[0] == urllib.error.URLError - and self._proxy_for(site)): - # connection problem when using a proxy == proxy error (XXX?) - raise brozzler.ProxyError( - 'youtube-dl hit apparent proxy error from ' - '%s' % page.url) from e - else: - raise - def full_and_thumb_jpegs(self, large_png): # these screenshots never have any alpha (right?) img = PIL.Image.open(io.BytesIO(large_png)).convert('RGB') @@ -424,12 +185,10 @@ class BrozzlerWorker: def brozzle_page(self, browser, site, page, on_screenshot=None, on_request=None, enable_youtube_dl=True): self.logger.info("brozzling {}".format(page)) + ydl_fetches = None if enable_youtube_dl: try: - with tempfile.TemporaryDirectory(prefix='brzl-ydl-') as tempdir: - ydl = self._youtube_dl(tempdir, site) - ydl_spy = ydl.brozzler_spy # remember for later - self._try_youtube_dl(ydl, site, page) + ydl_fetches = ydl.do_youtube_dl(self, site, page) except brozzler.ReachedLimit as e: raise except brozzler.ShutdownRequested: @@ -447,16 +206,14 @@ class BrozzlerWorker: self.logger.error( 'youtube_dl raised exception on %s', page, exc_info=True) - else: - ydl_spy = False - if self._needs_browsing(page, ydl_spy): + if self._needs_browsing(page, ydl_fetches): self.logger.info('needs browsing: %s', page) outlinks = self._browse_page(browser, site, page, on_screenshot, on_request) return outlinks else: - if not self._already_fetched(page, ydl_spy): + if not self._already_fetched(page, ydl_fetches): self.logger.info('needs fetch: %s', page) self._fetch_url(site, page) else: @@ -550,9 +307,9 @@ class BrozzlerWorker: raise brozzler.ProxyError( 'proxy error fetching %s' % page.url) from e - def _needs_browsing(self, page, brozzler_spy): - if brozzler_spy: - final_bounces = brozzler_spy.final_bounces(page.url) + def _needs_browsing(self, page, ydl_fetches): + if ydl_fetches: + final_bounces = ydl.final_bounces(ydl_fetches, page.url) if not final_bounces: return True for txn in final_bounces: @@ -563,9 +320,9 @@ class BrozzlerWorker: else: return True - def _already_fetched(self, page, brozzler_spy): - if brozzler_spy: - for txn in brozzler_spy.final_bounces(page.url): + def _already_fetched(self, page, ydl_fetches): + if ydl_fetches: + for txn in final_bounces(ydl_fetches, page.url): if (txn['method'] == 'GET' and txn['status_code'] == 200): return True return False @@ -582,7 +339,7 @@ class BrozzlerWorker: # _proxy_for() call in log statement can raise brozzler.ProxyError # which is why we honor time limit and stop request first☝🏻 self.logger.info( - "brozzling site (proxy=%r) %r", + "brozzling site (proxy=%r) %s", self._proxy_for(site), site) while time.time() - start < self.SITE_SESSION_MINUTES * 60: site.refresh() diff --git a/brozzler/ydl.py b/brozzler/ydl.py new file mode 100644 index 0000000..9ffd368 --- /dev/null +++ b/brozzler/ydl.py @@ -0,0 +1,322 @@ +''' +brozzler/ydl.py - youtube-dl support for brozzler + +This code was extracted from worker.py and + +Copyright (C) 2018 Internet Archive + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +''' + +import logging +import youtube_dl +import brozzler +import urllib.request +import tempfile +import urlcanon +import os +import json + +_orig_webpage_read_content = youtube_dl.extractor.generic.GenericIE._webpage_read_content +def _webpage_read_content(self, *args, **kwargs): + content = _orig_webpage_read_content(self, *args, **kwargs) + if len(content) > 20000000: + logging.warn( + 'bypassing youtube-dl extraction because content is ' + 'too large (%s characters)', len(content)) + return '' + return content +youtube_dl.extractor.generic.GenericIE._webpage_read_content = _webpage_read_content + +class ExtraHeaderAdder(urllib.request.BaseHandler): + def __init__(self, extra_headers): + self.extra_headers = extra_headers + self.http_request = self._http_request + self.https_request = self._http_request + + def _http_request(self, req): + for h, v in self.extra_headers.items(): + if h.capitalize() not in req.headers: + req.add_header(h, v) + return req + +class YoutubeDLSpy(urllib.request.BaseHandler): + logger = logging.getLogger(__module__ + "." + __qualname__) + + def __init__(self): + self.reset() + + def _http_response(self, request, response): + fetch = { + 'url': request.full_url, + 'method': request.get_method(), + 'response_code': response.code, + 'response_headers': response.headers, + } + self.fetches.append(fetch) + return response + + http_response = https_response = _http_response + + def reset(self): + self.fetches = [] + +def final_bounces(fetches, url): + """ + Resolves redirect chains in `fetches` and returns a list of fetches + representing the final redirect destinations of the given url. There could + be more than one if for example youtube-dl hit the same url with HEAD and + then GET requests. + """ + redirects = {} + for fetch in fetches: + # XXX check http status 301,302,303,307? check for "uri" header + # as well as "location"? see urllib.request.HTTPRedirectHandler + if 'location' in fetch['response_headers']: + redirects[fetch['url']] = fetch + + final_url = url + while final_url in redirects: + fetch = redirects.pop(final_url) + final_url = urllib.parse.urljoin( + fetch['url'], fetch['response_headers']['location']) + + final_bounces = [] + for fetch in fetches: + if fetch['url'] == final_url: + final_bounces.append(fetch) + + return final_bounces + +def _build_youtube_dl(worker, destdir, site): + ''' + Builds a `youtube_dl.YoutubeDL` for brozzling `site` with `worker`. + + The `YoutubeDL` instance does a few special brozzler-specific things: + + - keeps track of urls fetched using a `YoutubeDLSpy` + - periodically updates `site.last_claimed` in rethinkdb + - if brozzling through warcprox and downloading fragmented (DASH) videos, + pushes the stitched together video to warcprox using a + WARCPROX_WRITE_RECORD request + + Args: + worker (brozzler.BrozzlerWorker): the calling brozzler worker + destdir (str): where to save downloaded videos + site (brozzler.Site): the site we are brozzling + + Returns: + a `youtube_dl.YoutubeDL` instance + ''' + + class _YoutubeDL(youtube_dl.YoutubeDL): + logger = logging.getLogger(__module__ + "." + __qualname__) + + def add_default_extra_info(self, ie_result, ie, url): + # hook in some logging + super().add_default_extra_info(ie_result, ie, url) + if ie_result.get('_type') == 'playlist': + self.logger.info( + 'extractor %r found playlist in %s', ie.IE_NAME, url) + else: + self.logger.info( + 'extractor %r found a video in %s', ie.IE_NAME, url) + + def _push_stitched_up_vid_to_warcprox(self, site, info_dict, ctx): + try: + import magic + mimetype = magic.from_file(ctx['filename'], mime=True) + except ImportError as e: + mimetype = 'video/%s' % info_dict['ext'] + self.logger.warn('guessing mimetype %s because %r', mimetype, e) + url = 'youtube-dl:%05d:%s' % ( + info_dict.get('playlist_index') or 1, + info_dict['webpage_url']) + size = os.path.getsize(ctx['filename']) + self.logger.info( + 'pushing %r video stitched-up as %s (%s bytes) to ' + 'warcprox at %s with url %s', info_dict['format'], + mimetype, size, worker._proxy_for(site), url) + with open(ctx['filename'], 'rb') as f: + # include content-length header to avoid chunked + # transfer, which warcprox currently rejects + request, response = worker._warcprox_write_record( + warcprox_address=worker._proxy_for(site), url=url, + warc_type='resource', content_type=mimetype, payload=f, + extra_headers={'content-length': size}) + # consulted by _remember_videos() + self.stitch_ups.append({ + 'url': url, + 'response_code': response.code, + 'content-type': mimetype, + 'content-length': size, + }) + + def process_info(self, info_dict): + _orig__finish_frag_download = youtube_dl.downloader.fragment.FragmentFD._finish_frag_download + + def _finish_frag_download(ffd_self, ctx): + _orig__finish_frag_download(ffd_self, ctx) + if worker._using_warcprox(site): + self._push_stitched_up_vid_to_warcprox(site, info_dict, ctx) + + youtube_dl.downloader.fragment.FragmentFD._finish_frag_download = _finish_frag_download + return super().process_info(info_dict) + + def maybe_heartbeat_site_last_claimed(*args, **kwargs): + # in case youtube-dl takes a long time, heartbeat site.last_claimed + # to prevent another brozzler-worker from claiming the site + try: + if site.rr and doublethink.utcnow() - site.last_claimed > datetime.timedelta(minutes=worker.SITE_SESSION_MINUTES): + worker.logger.debug( + 'heartbeating site.last_claimed to prevent another ' + 'brozzler-worker claiming this site id=%r', site.id) + site.last_claimed = doublethink.utcnow() + site.save() + except: + worker.logger.debug( + 'problem heartbeating site.last_claimed site id=%r', + site.id, exc_info=True) + + ydl_opts = { + "outtmpl": "{}/ydl%(autonumber)s.out".format(destdir), + "verbose": False, + "retries": 1, + "logger": logging.getLogger("youtube_dl"), + "nocheckcertificate": True, + "hls_prefer_native": True, + "noprogress": True, + "nopart": True, + "no_color": True, + "progress_hooks": [maybe_heartbeat_site_last_claimed], + # https://github.com/rg3/youtube-dl/blob/master/README.md#format-selection + # "best: Select the best quality format represented by a single + # file with video and audio." + "format": "best/bestvideo+bestaudio", + } + if worker._proxy_for(site): + ydl_opts["proxy"] = "http://{}".format(worker._proxy_for(site)) + ydl = _YoutubeDL(ydl_opts) + if site.extra_headers(): + ydl._opener.add_handler(ExtraHeaderAdder(site.extra_headers())) + ydl.fetch_spy = YoutubeDLSpy() + ydl.stitch_ups = [] + ydl._opener.add_handler(ydl.fetch_spy) + return ydl + +def _remember_videos(page, fetches, stitch_ups=None): + ''' + Saves info about videos captured by youtube-dl in `page.videos`. + ''' + if not 'videos' in page: + page.videos = [] + for fetch in fetches or []: + content_type = fetch['response_headers'].get_content_type() + if (content_type.startswith('video/') + # skip manifests of DASH segmented video - + # see https://github.com/internetarchive/brozzler/pull/70 + and content_type != 'video/vnd.mpeg.dash.mpd' + and fetch['method'] == 'GET' + and fetch['response_code'] in (200, 206)): + video = { + 'blame': 'youtube-dl', + 'url': fetch['url'], + 'response_code': fetch['response_code'], + 'content-type': content_type, + } + if 'content-length' in fetch['response_headers']: + video['content-length'] = int( + fetch['response_headers']['content-length']) + if 'content-range' in fetch['response_headers']: + video['content-range'] = fetch[ + 'response_headers']['content-range'] + logging.debug('embedded video %s', video) + page.videos.append(video) + for stitch_up in stitch_ups or []: + if stitch_up['content-type'].startswith('video/'): + video = { + 'blame': 'youtube-dl', + 'url': stitch_up['url'], + 'response_code': stitch_up['response_code'], + 'content-type': stitch_up['content-type'], + 'content-length': stitch_up['content-length'], + } + logging.debug('embedded video %s', video) + page.videos.append(video) + +def _try_youtube_dl(worker, ydl, site, page): + try: + logging.info("trying youtube-dl on %s", page) + + with brozzler.thread_accept_exceptions(): + # we do whatwg canonicalization here to avoid "" resulting in ProxyError + # needs automated test + ie_result = ydl.extract_info(str(urlcanon.whatwg(page.url))) + _remember_videos(page, ydl.fetch_spy.fetches, ydl.stitch_ups) + if worker._using_warcprox(site): + info_json = json.dumps(ie_result, sort_keys=True, indent=4) + logging.info( + "sending WARCPROX_WRITE_RECORD request to warcprox " + "with youtube-dl json for %s", page) + worker._warcprox_write_record( + warcprox_address=worker._proxy_for(site), + url="youtube-dl:%s" % str(urlcanon.semantic(page.url)), + warc_type="metadata", + content_type="application/vnd.youtube-dl_formats+json;charset=utf-8", + payload=info_json.encode("utf-8"), + extra_headers=site.extra_headers()) + except brozzler.ShutdownRequested as e: + raise + except BaseException as e: + if hasattr(e, "exc_info") and e.exc_info[0] == youtube_dl.utils.UnsupportedError: + pass + elif (hasattr(e, "exc_info") + and e.exc_info[0] == urllib.error.HTTPError + and hasattr(e.exc_info[1], "code") + and e.exc_info[1].code == 420): + raise brozzler.ReachedLimit(e.exc_info[1]) + elif (hasattr(e, 'exc_info') + and e.exc_info[0] == urllib.error.URLError + and worker._proxy_for(site)): + # connection problem when using a proxy == proxy error (XXX?) + raise brozzler.ProxyError( + 'youtube-dl hit apparent proxy error from ' + '%s' % page.url) from e + else: + raise + +def do_youtube_dl(worker, site, page): + ''' + Runs youtube-dl configured for `worker` and `site` to download videos from + `page`. + + Args: + worker (brozzler.BrozzlerWorker): the calling brozzler worker + site (brozzler.Site): the site we are brozzling + page (brozzler.Page): the page we are brozzling + + Returns: + `list` of `dict`: with info about urls fetched: + + [{ + 'url': ..., + 'method': ..., + 'response_code': ..., + 'response_headers': ..., + }, ...] + ''' + with tempfile.TemporaryDirectory(prefix='brzl-ydl-') as tempdir: + ydl = _build_youtube_dl(worker, tempdir, site) + _try_youtube_dl(worker, ydl, site, page) + return ydl.fetch_spy.fetches From c2ad8427e1dd804331e3ee0647ec103be1e7a6d8 Mon Sep 17 00:00:00 2001 From: Noah Levitt Date: Wed, 15 Aug 2018 17:41:35 -0700 Subject: [PATCH 3/5] add missing imports and fix mimetype issue --- brozzler/ydl.py | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/brozzler/ydl.py b/brozzler/ydl.py index 9ffd368..93ea72e 100644 --- a/brozzler/ydl.py +++ b/brozzler/ydl.py @@ -26,6 +26,8 @@ import tempfile import urlcanon import os import json +import doublethink +import datetime _orig_webpage_read_content = youtube_dl.extractor.generic.GenericIE._webpage_read_content def _webpage_read_content(self, *args, **kwargs): @@ -133,12 +135,22 @@ def _build_youtube_dl(worker, destdir, site): 'extractor %r found a video in %s', ie.IE_NAME, url) def _push_stitched_up_vid_to_warcprox(self, site, info_dict, ctx): - try: - import magic - mimetype = magic.from_file(ctx['filename'], mime=True) - except ImportError as e: - mimetype = 'video/%s' % info_dict['ext'] - self.logger.warn('guessing mimetype %s because %r', mimetype, e) + # XXX Don't know how to get the right content-type. Youtube-dl + # doesn't supply it. Sometimes (with --hls-prefer-native) + # youtube-dl produces a stitched-up video that /usr/bin/file fails + # to identify (says "application/octet-stream"). `ffprobe` doesn't + # give us a mimetype. + if info_dict.get('ext') == 'mp4': + mimetype = 'video/mp4' + else: + try: + import magic + mimetype = magic.from_file(ctx['filename'], mime=True) + except ImportError as e: + mimetype = 'video/%s' % info_dict['ext'] + self.logger.warn( + 'guessing mimetype %s because %r', mimetype, e) + url = 'youtube-dl:%05d:%s' % ( info_dict.get('playlist_index') or 1, info_dict['webpage_url']) From 3c27132aaa4ee6c048066963d4fcdb577521299a Mon Sep 17 00:00:00 2001 From: Noah Levitt Date: Wed, 15 Aug 2018 17:42:53 -0700 Subject: [PATCH 4/5] test for youtube-dl stitch-up --- setup.py | 2 +- tests/htdocs/site10/index.html | 34 +++++++++++++++++++++++++++++++++ tests/htdocs/site10/small.m3u8 | 15 +++++++++++++++ tests/htdocs/site10/small0.ts | Bin 0 -> 42864 bytes tests/htdocs/site10/small1.ts | Bin 0 -> 60348 bytes tests/htdocs/site10/small2.ts | Bin 0 -> 68244 bytes tests/htdocs/site10/small3.ts | Bin 0 -> 56964 bytes tests/htdocs/site10/small4.ts | Bin 0 -> 49632 bytes tests/htdocs/site10/small5.ts | Bin 0 -> 32712 bytes tests/test_cluster.py | 30 ++++++++++++++++++++++++++++- 10 files changed, 79 insertions(+), 2 deletions(-) create mode 100644 tests/htdocs/site10/index.html create mode 100644 tests/htdocs/site10/small.m3u8 create mode 100644 tests/htdocs/site10/small0.ts create mode 100644 tests/htdocs/site10/small1.ts create mode 100644 tests/htdocs/site10/small2.ts create mode 100644 tests/htdocs/site10/small3.ts create mode 100644 tests/htdocs/site10/small4.ts create mode 100644 tests/htdocs/site10/small5.ts diff --git a/setup.py b/setup.py index db7a56c..fee81ff 100644 --- a/setup.py +++ b/setup.py @@ -67,7 +67,7 @@ setuptools.setup( 'youtube-dl', 'reppy==0.3.4', 'requests', - 'websocket-client!=0.39.0', + 'websocket-client!=0.39.0,!=0.49.0', 'pillow>=5.2.0', 'urlcanon>=0.1.dev23', 'doublethink>=0.2.0.dev88', diff --git a/tests/htdocs/site10/index.html b/tests/htdocs/site10/index.html new file mode 100644 index 0000000..0794c84 --- /dev/null +++ b/tests/htdocs/site10/index.html @@ -0,0 +1,34 @@ + + + segmented (hls) video test + + + + + + + + + + diff --git a/tests/htdocs/site10/small.m3u8 b/tests/htdocs/site10/small.m3u8 new file mode 100644 index 0000000..d86749c --- /dev/null +++ b/tests/htdocs/site10/small.m3u8 @@ -0,0 +1,15 @@ +#EXTM3U +#EXT-X-VERSION:3 +#EXT-X-TARGETDURATION:1 +#EXT-X-MEDIA-SEQUENCE:1 +#EXTINF:1.000000, +small1.ts +#EXTINF:1.000000, +small2.ts +#EXTINF:1.000000, +small3.ts +#EXTINF:1.000000, +small4.ts +#EXTINF:0.533333, +small5.ts +#EXT-X-ENDLIST diff --git a/tests/htdocs/site10/small0.ts b/tests/htdocs/site10/small0.ts new file mode 100644 index 0000000000000000000000000000000000000000..53d6c87cf6f1f90253af832ddce1aaddd06701b6 GIT binary patch literal 42864 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 UhyTCt_rLLp|35#H_zpGj9}LqT0ssI2 literal 0 HcmV?d00001 diff --git a/tests/htdocs/site10/small1.ts b/tests/htdocs/site10/small1.ts new file mode 100644 index 0000000000000000000000000000000000000000..d4d6df6158b6c34c54f6b4c3b06e3e460aafaf5d GIT binary patch literal 60348 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

k=rndPcIe?eoEKvr&ZH>b+lIF-M5|-&C`g% zPA3vv;Dy_ry)2I&#el-nw;565GTcJvmr_e$!B9+{Ve;zVTUA9StQ%ayV? zO&F6Rne#NU%K=U`BpI;sO+ncrZK&?kd;Oeste}?Snlt#o__x~vjnt#cwhwyp`v`f- znE+NG_zO-Du(_lsp#3iFY6%z-Q_R*@%4VlaMbxQdCwD{MfNMu%xFV)&MQiI2a%Z;R z4I6qKbvy<}tQpsj$59(Xq>^lMgdJaFuuF;ji}`!+Oq#>7y8QFLCqn!{rr5q{xuOWx z8M0YxZcvcGhP3b`G%7%IDP@bIf8Fvkk&_fMNHrwNkk;{OWH}Lq9tGMmu66QGl3|CS z6=k#>>gmB6Wn}q;FPW9JiaUU%a{VLeTlk|&YF3lj$e!Tm3k@&=SvXK$gBd&aE;t&1 z3%Keb|6lzxE|}dBBE^Sss=qZI-(1}E&)m5j3R*rXZ*YHH5EPCpjEk)bmGClJsO&*+Bg${bdN^en*4Dn?hTF#HD$X0o!F9mpEIo71v4QnR@{)aR_}5{M{c1E7ly zHL6jMP~JBB2&t~VlLBEf5DOd{su$?aJn&?YV<5ANV46YbwLA+@MC18nGOX-a|q1%@d8aSc->~@s5O!T09m}3k0=gt%C?p^N2qQ z%+3TX=0<~9$NbrgLP>+|kn#i~uldt-oUhOrzFGOiEEjn78Fd;r?rIAE6oNg1Q$Y-L zAun9L8)MSa`p|RjH~5+1kBRUS;jNgaXX+_P%@nDOJ7r$R{PDGv#PWNb#`c+r`5u|71U!E*X5T06lz4}gNHO(~S zwkdwT(pd&v+pA(!s%SEfz9wmWwzr9z>mYHd0Q)5YEthwvQiUJpZ0YY>8z^#JYeRUh zYi)|Z<1h0|qG%gRFDAq5+z&iY;8sH(K`2bFCiQ&I!W|5?gRG?i@5)zxnbZg&)Wc$; z^PmJ70`TEhgpk=@D@T@MF#v@D*^a_x|9D)>STFi;wmu7o=r;w;1`|T(O?xyA;P+D=SQ8Cj z!Q8K65zAAf0k@XkOD^#gpw5Y_*Z`130M-px80FkeXE>t@X5n4bq=M=f1OdBc4olK7+~`Cg_{7lDB%CVtL+4bfcb8S=~8r)EJ%(hUmGz zHlzW;{Jq6e!tvP&h6QeOwWncGGSuZUzQSN9IRwH#MzM{`&s^dU@RX)b!t1q`zcaP?xycoEW&P!`wPHw|RX zpMw~PA0U`mt8G{U6YwVty|AwPAH0Di8ok@db`!%6=hSt>SqYV qU>C^ym+bxDbRY14dCe}8z2rpp?2YGX;Ofg}u?LraPXSl}xBmj!cwW^2 literal 0 HcmV?d00001 diff --git a/tests/htdocs/site10/small2.ts b/tests/htdocs/site10/small2.ts new file mode 100644 index 0000000000000000000000000000000000000000..d594a090e7bb4dfae80c5dc32457b594d8d32885 GIT binary patch literal 68244 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 literal 0 HcmV?d00001 diff --git a/tests/htdocs/site10/small4.ts b/tests/htdocs/site10/small4.ts new file mode 100644 index 0000000000000000000000000000000000000000..38e50595b163edac0560dde8e8bbb28fa2ffb2f8 GIT binary patch literal 49632 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

XT-{QX0BM}Ru%-a5bR(4gDn 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 literal 0 HcmV?d00001 diff --git a/tests/test_cluster.py b/tests/test_cluster.py index ae4f7a4..878cd35 100644 --- a/tests/test_cluster.py +++ b/tests/test_cluster.py @@ -3,7 +3,7 @@ test_cluster.py - integration tests for a brozzler cluster, expects brozzler, warcprox, pywb, rethinkdb and other dependencies to be running already -Copyright (C) 2016-2017 Internet Archive +Copyright (C) 2016-2018 Internet Archive Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -796,3 +796,31 @@ def test_time_limit(httpd): job.refresh() assert job.status == 'FINISHED' +def test_ydl_stitching(httpd): + test_id = 'test_ydl_stitching-%s' % datetime.datetime.utcnow().isoformat() + rr = doublethink.Rethinker('localhost', db='brozzler') + frontier = brozzler.RethinkDbFrontier(rr) + site = brozzler.Site(rr, { + 'seed': 'http://localhost:%s/site10/' % httpd.server_port}) + brozzler.new_site(frontier, site) + + # the site should be brozzled fairly quickly + start = time.time() + while site.status != 'FINISHED' and time.time() - start < 300: + time.sleep(0.5) + site.refresh() + assert site.status == 'FINISHED' + + # check page.videos + pages = list(frontier.site_pages(site.id)) + assert len(pages) == 1 + page = pages[0] + assert len(page.videos) == 6 + assert { + 'blame': 'youtube-dl', + 'content-length': 267900, + 'content-type': 'video/mp4', + 'response_code': 204, + 'url': 'youtube-dl:00001:http://localhost:%s/site10/' % httpd.server_port, + } in page.videos + From e7d227385690f12d489ab433f3b406bc17429bca Mon Sep 17 00:00:00 2001 From: Noah Levitt Date: Thu, 16 Aug 2018 11:40:54 -0700 Subject: [PATCH 5/5] fix failing tests --- brozzler/worker.py | 4 ++-- tests/test_units.py | 17 +++++++++-------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/brozzler/worker.py b/brozzler/worker.py index 6994be3..f87388d 100644 --- a/brozzler/worker.py +++ b/brozzler/worker.py @@ -322,8 +322,8 @@ class BrozzlerWorker: def _already_fetched(self, page, ydl_fetches): if ydl_fetches: - for txn in final_bounces(ydl_fetches, page.url): - if (txn['method'] == 'GET' and txn['status_code'] == 200): + for fetch in ydl.final_bounces(ydl_fetches, page.url): + if (fetch['method'] == 'GET' and fetch['response_code'] == 200): return True return False diff --git a/tests/test_units.py b/tests/test_units.py index 47307d0..a9fdb0e 100644 --- a/tests/test_units.py +++ b/tests/test_units.py @@ -23,6 +23,7 @@ import threading import os import brozzler import brozzler.chrome +import brozzler.ydl import logging import yaml import datetime @@ -227,9 +228,8 @@ def test_proxy_down(): # youtube-dl fetch with tempfile.TemporaryDirectory(prefix='brzl-ydl-') as tempdir: - ydl = worker._youtube_dl(tempdir, site) with pytest.raises(brozzler.ProxyError): - worker._try_youtube_dl(ydl, site, page) + brozzler.ydl.do_youtube_dl(worker, site, page) # raw fetch with pytest.raises(brozzler.ProxyError): @@ -404,18 +404,19 @@ def test_needs_browsing(): page = brozzler.Page(None, { 'url':'http://example.com/a'}) - spy = brozzler.worker.YoutubeDLSpy() - spy.transactions.append({ + spy = brozzler.ydl.YoutubeDLSpy() + spy.fetches.append({ 'url': 'http://example.com/a', 'method': 'HEAD', - 'status_code': 301, + 'response_code': 301, 'response_headers': ConvenientHeaders({'Location': '/b'})}) - spy.transactions.append({ + spy.fetches.append({ 'url': 'http://example.com/b', 'method': 'GET', - 'status_code': 200, + 'response_code': 200, 'response_headers': ConvenientHeaders({ 'Content-Type': 'application/pdf'})}) - assert not brozzler.worker.BrozzlerWorker._needs_browsing(None, page, spy) + assert not brozzler.worker.BrozzlerWorker._needs_browsing( + None, page, spy.fetches)