'display_id': 'teen-grabs-a-dildo-and-fucks-her-pussy-live-on-1hottie-i-rec',
'ext': 'mp4',
'title': 'Teen grabs a dildo and fucks her pussy live on 1hottie, I rec',
- 'thumbnail': 're:^https?://.*\.jpg$',
+ 'thumbnail': r're:^https?://.*\.jpg$',
'duration': 551,
'view_count': int,
'age_limit': 18,
config = self._parse_json(
self._search_regex(
- r'=\s*({.+?})\s*,\s*[\da-zA-Z_]+\s*=',
+ (r'=\s*({.+?})\s*;\s*v1ar\b',
+ r'=\s*({.+?})\s*,\s*[\da-zA-Z_]+\s*='),
webpage, 'config', default='{}'),
display_id, transform_source=js_to_json, fatal=False)
'height': int(height),
'filesize_approx': parse_filesize(filesize),
} for format_url, height, filesize in re.findall(
- r'<a[^>]+href="(/download/[^"]+)">MPEG4 (\d+)p<span[^>]*>(\d+\s+[a-zA-Z]+)<',
+ r'<a[^>]+href="(/download/[^"]+)">[^<]*?(\d+)p<span[^>]*>(\d+\s*[a-zA-Z]+)<',
webpage)]
thumbnail = None
duration = None
self._sort_formats(formats)
view_count = str_to_int(self._search_regex(
- r'class=["\']views["\'][^>]*><p>([\d,.]+)', webpage,
+ (r'Views:\s*</span>\s*<span>\s*([\d,.]+)',
+ r'class=["\']views["\'][^>]*><p>([\d,.]+)'), webpage,
'view count', fatal=False))
def extract_list(kind):
s = self._search_regex(
- r'(?s)<p[^>]*>%s:(.+?)</p>' % kind.capitalize(),
+ (r'(?s)%s:\s*</span>\s*<span>(.+?)</span>' % kind.capitalize(),
+ r'(?s)<p[^>]*>%s:(.+?)</p>' % kind.capitalize()),
webpage, kind, fatal=False)
return re.findall(r'<a[^>]+>([^<]+)</a>', s or '')