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:
parent
88a628a90f
commit
3a3645e6f2
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user