mirror of
https://gitlab.com/dstftw/youtube-dl.git
synced 2020-11-16 09:42:26 +00:00
[facebook:post] Add extractor (Closes #8321)
This commit is contained in:
parent
2e6e742c3c
commit
de691a498d
|
@ -196,7 +196,10 @@ from .everyonesmixtape import EveryonesMixtapeIE
|
||||||
from .exfm import ExfmIE
|
from .exfm import ExfmIE
|
||||||
from .expotv import ExpoTVIE
|
from .expotv import ExpoTVIE
|
||||||
from .extremetube import ExtremeTubeIE
|
from .extremetube import ExtremeTubeIE
|
||||||
from .facebook import FacebookIE
|
from .facebook import (
|
||||||
|
FacebookIE,
|
||||||
|
FacebookPostIE,
|
||||||
|
)
|
||||||
from .faz import FazIE
|
from .faz import FazIE
|
||||||
from .fc2 import FC2IE
|
from .fc2 import FC2IE
|
||||||
from .fczenit import FczenitIE
|
from .fczenit import FczenitIE
|
||||||
|
|
|
@ -199,3 +199,33 @@ class FacebookIE(InfoExtractor):
|
||||||
'formats': formats,
|
'formats': formats,
|
||||||
'uploader': uploader,
|
'uploader': uploader,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
class FacebookPostIE(InfoExtractor):
|
||||||
|
IE_NAME = 'facebook:post'
|
||||||
|
_VALID_URL = r'https?://(?:\w+\.)?facebook\.com/[^/]+/posts/(?P<id>\d+)'
|
||||||
|
_TEST = {
|
||||||
|
'url': 'https://www.facebook.com/maxlayn/posts/10153807558977570',
|
||||||
|
'md5': '037b1fa7f3c2d02b7a0d7bc16031ecc6',
|
||||||
|
'info_dict': {
|
||||||
|
'id': '544765982287235',
|
||||||
|
'ext': 'mp4',
|
||||||
|
'title': '"What are you doing running in the snow?"',
|
||||||
|
'uploader': 'FailArmy',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
def _real_extract(self, url):
|
||||||
|
post_id = self._match_id(url)
|
||||||
|
|
||||||
|
webpage = self._download_webpage(url, post_id)
|
||||||
|
|
||||||
|
entries = [
|
||||||
|
self.url_result('facebook:%s' % video_id, FacebookIE.ie_key())
|
||||||
|
for video_id in self._parse_json(
|
||||||
|
self._search_regex(
|
||||||
|
r'(["\'])video_ids\1\s*:\s*(?P<ids>\[.+?\])',
|
||||||
|
webpage, 'video ids', group='ids'),
|
||||||
|
post_id)]
|
||||||
|
|
||||||
|
return self.playlist_result(entries, post_id)
|
||||||
|
|
Loading…
Reference in a new issue