1
0
mirror of https://codeberg.org/polarisfm/youtube-dl synced 2024-11-23 00:54:31 +01:00

[tube8] Extract categories and tags (Closes #10579)

This commit is contained in:
Sergey M․ 2016-09-11 22:50:36 +07:00
parent 6bb05b32a9
commit 6599c72527
No known key found for this signature in database
GPG Key ID: 2C393E0F18A9236D

View File

@ -1,5 +1,7 @@
from __future__ import unicode_literals from __future__ import unicode_literals
import re
from ..utils import ( from ..utils import (
int_or_none, int_or_none,
str_to_int, str_to_int,
@ -21,7 +23,13 @@ class Tube8IE(KeezMoviesIE):
'title': 'Kasia music video', 'title': 'Kasia music video',
'age_limit': 18, 'age_limit': 18,
'duration': 230, 'duration': 230,
'categories': ['Teen'],
'tags': ['dancing'],
},
'params': {
'proxy': '127.0.0.1:8118',
} }
}, { }, {
'url': 'http://www.tube8.com/shemale/teen/blonde-cd-gets-kidnapped-by-two-blacks-and-punished-for-being-a-slutty-girl/19569151/', 'url': 'http://www.tube8.com/shemale/teen/blonde-cd-gets-kidnapped-by-two-blacks-and-punished-for-being-a-slutty-girl/19569151/',
'only_matching': True, 'only_matching': True,
@ -51,6 +59,17 @@ class Tube8IE(KeezMoviesIE):
r'<span id="allCommentsCount">(\d+)</span>', r'<span id="allCommentsCount">(\d+)</span>',
webpage, 'comment count', fatal=False)) webpage, 'comment count', fatal=False))
category = self._search_regex(
r'Category:\s*</strong>\s*<a[^>]+href=[^>]+>([^<]+)',
webpage, 'category', fatal=False)
categories = [category] if category else None
tags_str = self._search_regex(
r'(?s)Tags:\s*</strong>(.+?)</(?!a)',
webpage, 'tags', fatal=False)
tags = [t for t in re.findall(
r'<a[^>]+href=[^>]+>([^<]+)', tags_str)] if tags_str else None
info.update({ info.update({
'description': description, 'description': description,
'uploader': uploader, 'uploader': uploader,
@ -58,6 +77,8 @@ class Tube8IE(KeezMoviesIE):
'like_count': like_count, 'like_count': like_count,
'dislike_count': dislike_count, 'dislike_count': dislike_count,
'comment_count': comment_count, 'comment_count': comment_count,
'categories': categories,
'tags': tags,
}) })
return info return info