class VideoVimeo(VideoBase): @staticmethod def get_host(): return 'vimeo' @staticmethod def can_rip(url): return 'vimeo.com/' in url @staticmethod def get_sample_url(): return 'http://vimeo.com/17135848' def rip_video(self): r = self.httpy.get(self.url) # Get config if not 'data-config-url="' in r: raise Exception('no data-config-url" found at %s' % self.url) config = self.httpy.between(r, 'data-config-url="', '"')[0] config = config.replace('&', '&') r = self.httpy.get(config) json = loads(r) formats = json['request']['files']['h264'] for ideal in ['hd', 'sd', 'mobile']: if ideal in formats: break if not ideal in formats: raise Exception('could not find appropriate video format at %s' % self.url) vid = formats[ideal]['url'] result = self.get_video_info(vid) result['poster'] = None # No preview return result @staticmethod def test(): from Httpy import Httpy httpy = Httpy() try: r = httpy.get('http://www.vimeo.com/') if len(r.strip()) == 0: raise Exception('empty response from vimeo.com') except Exception, e: raise e return VideoBase.test_ripper(VideoVimeo)
def test(): return VideoBase.test_ripper(VideoCollegehumor)
def test(): return VideoBase.test_ripper(VideoXhamster)
def test(): return VideoBase.test_ripper(VideoXhamster)
def test(): return VideoBase.test_ripper(VideoBeeg)
def test(): return VideoBase.test_ripper(VideoXtube)
def test(): return VideoBase.test_ripper(VideoSetsdb)
def test(): return VideoBase.test_ripper(VideoSoundgasm)
def test(): return VideoBase.test_ripper(VideoSeenive)
def test(): return VideoBase.test_ripper(VideoYouporn)
def test(): return VideoBase.test_ripper(VideoMobypicture)
def test(): return VideoBase.test_ripper(VideoDrtuber)
def test(): return VideoBase.test_ripper(VideoDrtuber)
def test(): return VideoBase.test_ripper(VideoDailymotion)
def test(): return VideoBase.test_ripper(VideoKinkylicious)
def test(): return VideoBase.test_ripper(VideoSetsdb)
def test(): return VideoBase.test_ripper(VideoTube8)
def test(): return VideoBase.test_ripper(_SampleVideo)
def test(): return VideoBase.test_ripper(VideoPlayvid)
def test(): return VideoBase.test_ripper(VideoTube8)
def test(): return VideoBase.test_ripper(VideoCollegehumor)
def test(): return VideoBase.test_ripper(VideoCliphunter)
def test(): return VideoBase.test_ripper(VideoMotherless)
def test(): return VideoBase.test_ripper(VideoSexykarma)
def test(): return VideoBase.test_ripper(VideoVideobam)
def test(): return VideoBase.test_ripper(VideoSpankbang)
def test(): return VideoBase.test_ripper(VideoPornably)
def test(): return VideoBase.test_ripper(VideoVporn)
def test(): return VideoBase.test_ripper(VideoXvideos)
def test(): return VideoBase.test_ripper(VideoFapdu)
def test(): return VideoBase.test_ripper(VideoPlayvid)
def test(): return VideoBase.test_ripper(VideoSpankbang)
def test(): return VideoBase.test_ripper(VideoDailymotion)
def test(): return VideoBase.test_ripper(VideoSexykarma)
def test(): return VideoBase.test_ripper(VideoSeenive)
def test(): return VideoBase.test_ripper(VideoPornably)
def test(): return VideoBase.test_ripper(VideoVidearn)
def test(): return VideoBase.test_ripper(VideoMotherless)
def test(): return VideoBase.test_ripper(VideoYoujizz)
def test(): return VideoBase.test_ripper(VideoRedtube)
def test(): return VideoBase.test_ripper(VideoFapdu)
def test(): return VideoBase.test_ripper(VideoXvideos)