aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/extractor/afreecatv.py
diff options
context:
space:
mode:
authorSergey M․ <dstftw@gmail.com>2017-10-02 03:28:25 +0700
committerSergey M․ <dstftw@gmail.com>2017-10-02 03:28:25 +0700
commit839728f5bfad3a6166be3839009b13963f00dfac (patch)
tree52d9bd8625f1e9c925be3fc53cc20c8b1607a873 /youtube_dl/extractor/afreecatv.py
parentfcdd37d053c97c1bc363635c46634c778ce3eee5 (diff)
[afreecatv] Add support for adult videos (closes #14376)
Diffstat (limited to 'youtube_dl/extractor/afreecatv.py')
-rw-r--r--youtube_dl/extractor/afreecatv.py27
1 files changed, 26 insertions, 1 deletions
diff --git a/youtube_dl/extractor/afreecatv.py b/youtube_dl/extractor/afreecatv.py
index c8cb91dcb..2c58f4617 100644
--- a/youtube_dl/extractor/afreecatv.py
+++ b/youtube_dl/extractor/afreecatv.py
@@ -139,6 +139,23 @@ class AfreecaTVIE(InfoExtractor):
'skip_download': True,
},
}, {
+ # adult video
+ 'url': 'http://vod.afreecatv.com/PLAYER/STATION/26542731',
+ 'info_dict': {
+ 'id': '20171001_F1AE1711_196617479_1',
+ 'ext': 'mp4',
+ 'title': '[생]서아 초심 찾기 방송 (part 1)',
+ 'thumbnail': 're:^https?://(?:video|st)img.afreecatv.com/.*$',
+ 'uploader': 'BJ서아',
+ 'uploader_id': 'bjdyrksu',
+ 'upload_date': '20171001',
+ 'duration': 3600,
+ 'age_limit': 18,
+ },
+ 'params': {
+ 'skip_download': True,
+ },
+ }, {
'url': 'http://www.afreecatv.com/player/Player.swf?szType=szBjId=djleegoon&nStationNo=11273158&nBbsNo=13161095&nTitleNo=36327652',
'only_matching': True,
}, {
@@ -160,7 +177,15 @@ class AfreecaTVIE(InfoExtractor):
video_xml = self._download_xml(
'http://afbbs.afreecatv.com:8080/api/video/get_video_info.php',
- video_id, query={'nTitleNo': video_id})
+ video_id, query={
+ 'nTitleNo': video_id,
+ 'partialView': 'SKIP_ADULT',
+ })
+
+ flag = xpath_text(video_xml, './track/flag', 'flag', default=None)
+ if flag and flag != 'SUCCEED':
+ raise ExtractorError(
+ '%s said: %s' % (self.IE_NAME, flag), expected=True)
video_element = video_xml.findall(compat_xpath('./track/video'))[1]
if video_element is None or video_element.text is None: