1
0
mirror of https://github.com/l1ving/youtube-dl synced 2025-03-10 06:27:20 +08:00

fixing missing video-title

This commit is contained in:
Avichai 2020-03-18 12:14:42 +02:00
parent 88a628a90f
commit 3a3645e6f2

View File

@ -438,22 +438,7 @@ class FacebookIE(InfoExtractor):
self._sort_formats(formats)
video_title = self._html_search_regex(
r'<h2\s+[^>]*class="uiHeaderTitle"[^>]*>([^<]*)</h2>', webpage,
'title', default=None)
if not video_title:
video_title = self._html_search_regex(
r'(?s)<span class="fbPhotosPhotoCaption".*?id="fbPhotoPageCaption"><span class="hasCaption">(.*?)</span>',
webpage, 'alternative title', default=None)
if not video_title:
video_title = self._og_search_title(webpage, default=None)
if not video_title:
video_title = self._html_search_meta(
'description', webpage, 'title', default=None)
if video_title:
video_title = limit_length(video_title, 80)
else:
video_title = 'Facebook video #%s' % video_id
video_title = self._extract_video_title(webpage, tahoe_data, video_id)
def _lowercase_escape(s):
if s:
@ -607,6 +592,30 @@ class FacebookIE(InfoExtractor):
video_id, fatal_if_no_video=True)
return info_dict
def _extract_video_title(self, webpage, tahoe_data, video_id):
video_title = self._html_search_regex(
r'<h2\s+[^>]*class="uiHeaderTitle"[^>]*>([^<]*)</h2>', webpage,
'title', default=None)
if not video_title:
video_title = self._html_search_regex(
r'(?s)<span class="fbPhotosPhotoCaption".*?id="fbPhotoPageCaption"><span class="hasCaption">(.*?)</span>',
webpage, 'alternative title', default=None)
if not video_title:
video_title = self._og_search_title(webpage, default=None)
if not video_title:
video_title = self._html_search_meta(
'description', webpage, 'title', default=None)
if not video_title:
values = re.findall(r'videoTitle"\s*:\s*"(.*?)"', tahoe_data.secondary)
if values:
video_title = values[-1]
if video_title:
video_title = limit_length(video_title, 80)
else:
video_title = 'Facebook video #%s' % video_id
return video_title
class FacebookTahoeData:
def __init__(self, extractor, page, video_id):
self._page = page