2017最新教程--如何下载美拍视频

本文介绍了一种通过分析网页源代码来获取加密的美拍视频真实地址的方法,并提供了一个Python脚本来自动化这一过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求:

最近有某朋友需要下载美拍视频并提取视频当中的音频。地址为http://www.meipai.com/media/457569009。

方法:

第一次看美拍的视频,网上搜索一下,发现有一些方法说看源代码中,可以看到视频地址。

打开分析后发现视频地址,发现url并不是直观的url,以前的方法已经不能使用了。

地址为:8141aHR0chDovL212dmlkZW8xMS5tZWl0dWRhdGEuY29tLzU2OGI3NzQyODc2MzY2MTQ4Lm1w8vwYNA==

判定为base64加密,对数据进行解密

发现解密后完全不认识,但是能看到htt的字样,那说明在base64的过程中还做了其他的处理(可能进行了移位等操作)

此时不能放弃,我们多次请求该网页后,发现url的base64值是不同的,这里应该就是对url在base64编码之前进行了某种移位的操作(猜测,具体没有去验证)。

多次请求后,发现如下

可以看到解码后的url为较正常的,我们尝试一下mvvideo11.meitudata.com/568b7742876366148.mp4

确实就是视频的真实地址,丢到下载器里面下载即可。

脚本:

 lcamry格言:手工超过三分钟的活就要脚本自动化实现。

#!/usr/bin
#-*- coding: utf-8 -*-
#DATA:2017年5月20日
#AUTHOR:lcamry
#blog:http://www.cnblogs.com/lcamry
#link:
#qq:646878467
#usag:python download-meipai-video.py http://www.meipai.com/media/730173228
import sys,os
import urllib2
import base64

try:
    from lxml import html
except ImportError:
    raise SystemExit("lxml module is wrong,please execute:pip install lxml")
class submain():
    def __init__(self,submain):
        self.submain = submain
        self.sublist = []
    def get_sourceurl(self):
        for i in range(0,20):
            scan_data = urllib2.urlopen(self.submain).read()
            html_data = html.fromstring(scan_data)
            submains = html_data.xpath("//span//@data-video")
            self.sublist.extend(submains)
 #       print self.sublist
    def scan_domain(self):
        self.get_sourceurl()
        return list(set(self.sublist))
if __name__ == '__main__':
    domain = sys.argv[1]
    submain = submain(domain).scan_domain()
    for line in  submain:
        if len(line) % 4 ==0:
            try:
                print base64.decodestring(line)
            except:
                continue

 

执行结果下:

从上图可以看到mvvideo11.meitudata.com/568b7742876366148.mp4这个地址就是视频的完整地址,此时我们用浏览器访问一下,视频地址正确。

notice:

需要说明的是,我们此处是对URL相当于爆破的,所以在一次执行后,可能没有正确的结果,此时多执行几次,每次返回的结果是不同的,然后自己判断返回的地址中就可以找到正确的地址。

 

转载于:https://www.cnblogs.com/lcamry/p/6883469.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值