用python解析风行网vip电影播放地址解析,pythonvip,用python解析风行网
用python解析风行网vip电影播放地址解析,pythonvip,用python解析风行网
用python解析风行网vip电影播放地址解析,通过http请求分析,获取视频最终的cdn播放地址,也就是一个mp4视频。vip电影想看就看,你懂的。
仅用于学习交流目的,最长24小时后请删除^_^
1.[用python解析风行网vip电影播放地址解析文件] fun.py~3KB
#!/usr/bin/evn python#coding=utf8import sysimport osimport timeimport urllib2import cStringIO, gzipimport lxml.htmlimport reimport jsonimport randomdef createRequest(url, referer = None): req = urllib2.Request( urllib2.quote(url.split('#')[0].encode('utf8'), safe = "%/:=&?~#+!$,;'@()*[]"), headers = {"Accept": "application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5", "Accept-Charset": "GBK,utf-8;q=0.7,*;q=0.3", "Accept-Encoding": "gzip", "Accept-Language": "zh-CN,zh;q=0.8", "Cache-Control": "max-age=0", "Connection": "keep-alive", "User-Agent": "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.106 Safari/535.2", }) if referer is not None: req.add_header('Referer', referer) return reqdef getContent(url, referer = None): f = urllib2.urlopen(createRequest(url, referer), timeout = 15) data = f.read() if data[:6] == '\x1f\x8b\x08\x00\x00\x00': data = gzip.GzipFile(fileobj = cStringIO.StringIO(data)).read() f.close() return datadef getCdnUrl(apiUrl, referer = None): content = getContent(apiUrl, referer) data = json.loads(content) token = data['token'] for resource in data['fsps']: fspUrl = resource['url'] if resource['clarity'] == 'super-dvd': fspUrl = resource['url'] fsp = re.findall("fsp://(\w+)", fspUrl)[0] if fsp == '': return None else: timestamp = int(time.time()) cdnUrl = 'http://jobsfe.funshion.com/query/v1/mp4/{0}.json?clifz=fun&mac=&tm={1}&token={2}'.format(fsp, timestamp, token) return cdnUrldef getPlayUrl(cdnUrl, referer = None): content = getContent(cdnUrl, referer) data = json.loads(content) if data['return'] == 'succ': playUrls = data['playlist'][0]['urls'] return playUrls[random.randint(0, len(playUrls)-1)] return Noneif __name__ == '__main__': if len(sys.argv) < 2 or sys.argv[1].startswith('http') is None: print 'Usage: python fun.py http://www.fun.tv/vplay/m-115946/' print 'Please input the url to be parse' sys.exit() videoUrl = sys.argv[1] vid = int(re.findall("vplay/m-(\d+)", videoUrl)[0]) apiUrl = 'http://api.fun.tv/ajax/get_webplayinfo/{0}/1/mp4?user=funshion'.format(vid) cdnUrl = getCdnUrl(apiUrl, videoUrl) playUrl = getPlayUrl(cdnUrl, videoUrl) print playUrl
编橙之家文章,
相关内容
- python初学者的猜数字游戏,python初学者猜数字,python初学
- python统计nginx日志ip和流量,pythonnginx日志ip,python统计
- python将uuid压缩成64位编码,pythonuuid,<python将uuid
- python获得 Alexa网站排名,pythonalexa,<python获得 Al
- 用Python实现最基本的电话本,Python实现电话,<用Pyth
- 用python代码科学上Google,python代码google,用python代码科学
- python终端播放音乐同步显示本地或网络歌词,python播放
- python获取情敌电脑内照片神器,,python获取情敌电脑
- python随机搜索并打开该路径内的文件,,标签: <pyt
- 基于python Selenium的用户登录自动化测试,pythonselenium,使
评论关闭