芒果TV 视频真实的地址获取

# coding=utf-8
import requests
import json
import re
import os
import urlparse
import random

vid = re.search(r'/(\d+).html','http://www.mgtv.com/v/10/167938/c/2942052.html').group(1)
r = requests.get('http://v.api.mgtv.com/player/video?retry=1&video_id=%s' % vid)
data = json.loads(r.content)
streams = data['data']['stream']
stream_domains = data['data']['stream_domain']
for stream in streams:
    print stream['name']
    stream_domain = random.choice(stream_domains)
    url = urlparse.urljoin(stream_domain, stream['url'])
    r = requests.get(url)
    data = json.loads(r.content)
    m3u8_url = data['info']
    parse_result = urlparse.urlparse(m3u8_url)
    r = requests.get(m3u8_url)
    segments = re.findall(r'^[^#][^\r][^\n]*', r.content, re.MULTILINE)
    for s in segments:
        print '%s://%s%s/%s' % (parse_result.scheme, parse_result.netloc, os.path.dirname(parse_result.path), s)

  转载:http://www.jianshu.com/p/c5d6012ec8e5

转载于:https://www.cnblogs.com/c-x-a/p/7273362.html

你可能感兴趣的:(芒果TV 视频真实的地址获取)