2 from __future__ 
import unicode_literals
 
   4 from .common 
import InfoExtractor
 
   6     compat_urllib_parse_urlparse
, 
  15 class Varzesh3IE(InfoExtractor
): 
  16     _VALID_URL 
= r
'https?://(?:www\.)?video\.varzesh3\.com/(?:[^/]+/)+(?P<id>[^/]+)/?' 
  18         'url': 'http://video.varzesh3.com/germany/bundesliga/5-%D9%88%D8%A7%DA%A9%D9%86%D8%B4-%D8%A8%D8%B1%D8%AA%D8%B1-%D8%AF%D8%B1%D9%88%D8%A7%D8%B2%D9%87%E2%80%8C%D8%A8%D8%A7%D9%86%D8%A7%D9%86%D8%9B%D9%87%D9%81%D8%AA%D9%87-26-%D8%A8%D9%88%D9%86%D8%AF%D8%B3/', 
  19         'md5': '2a933874cb7dce4366075281eb49e855', 
  23             'title': '۵ واکنش برتر دروازهبانان؛هفته ۲۶ بوندسلیگا', 
  24             'description': 'فصل ۲۰۱۵-۲۰۱۴', 
  25             'thumbnail': r
're:^https?://.*\.jpg$', 
  27         'skip': 'HTTP 404 Error', 
  29         'url': 'http://video.varzesh3.com/video/112785/%D8%AF%D9%84%D9%87-%D8%B9%D9%84%DB%8C%D8%9B-%D8%B3%D8%AA%D8%A7%D8%B1%D9%87-%D9%86%D9%88%D8%B8%D9%87%D9%88%D8%B1-%D9%84%DB%8C%DA%AF-%D8%A8%D8%B1%D8%AA%D8%B1-%D8%AC%D8%B2%DB%8C%D8%B1%D9%87', 
  30         'md5': '841b7cd3afbc76e61708d94e53a4a4e7', 
  34             'title': 'دله علی؛ ستاره نوظهور لیگ برتر جزیره', 
  35             'description': 'فوتبال 120', 
  37         'expected_warnings': ['description'], 
  40     def _real_extract(self
, url
): 
  41         display_id 
= self
._match
_id
(url
) 
  43         webpage 
= self
._download
_webpage
(url
, display_id
) 
  45         video_url 
= self
._search
_regex
( 
  46             r
'<source[^>]+src="([^"]+)"', webpage
, 'video url') 
  48         title 
= remove_start(self
._html
_search
_regex
( 
  49             r
'<title>([^<]+)</title>', webpage
, 'title'), 'ویدیو ورزش 3 | ') 
  51         description 
= self
._html
_search
_regex
( 
  52             r
'(?s)<div class="matn">(.+?)</div>', 
  53             webpage
, 'description', default
=None) 
  54         if description 
is None: 
  55             description 
= clean_html(self
._html
_search
_meta
('description', webpage
)) 
  57         thumbnail 
= self
._og
_search
_thumbnail
(webpage
, default
=None) 
  59             fb_sharer_url 
= self
._search
_regex
( 
  60                 r
'<a[^>]+href="(https?://www\.facebook\.com/sharer/sharer\.php?[^"]+)"', 
  61                 webpage
, 'facebook sharer URL', fatal
=False) 
  62             sharer_params 
= compat_parse_qs(compat_urllib_parse_urlparse(fb_sharer_url
).query
) 
  63             thumbnail 
= sharer_params
.get('p[images][0]', [None])[0] 
  65         video_id 
= self
._search
_regex
( 
  66             r
"<link[^>]+rel='(?:canonical|shortlink)'[^>]+href='/\?p=([^']+)'", 
  67             webpage
, display_id
, default
=None) 
  69             video_id 
= self
._search
_regex
( 
  70                 r
'var\s+VideoId\s*=\s*(\d+);', webpage
, 'video id', 
  77             'description': description
, 
  78             'thumbnail': thumbnail
,