吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 6867|回复: 10
收起左侧

[Python 转载] 抖音火山版(就是以前的火山短视频)短视频无水印解析及下载

[复制链接]
baolinguo 发表于 2021-9-16 10:27
不多说了,直接上图:
douyihuoshan.png

上代码:
[Python] 纯文本查看 复制代码
# 抖音火山版无水印下下载

import requests
import re
from tqdm import tqdm # 打印进度条的库

#  忽略警告代码
requests.packages.urllib3.disable_warnings()


# 获取字符串中指定字符
def getMidString(html, start_str, end):
     start = html.find(start_str)
     if start >= 0:
         start += len(start_str)
         end = html.find(end, start)
         if end >= 0:
             return html[start:end]


def getRealUrl(url):
     headers = {
        'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1',
    }

     # 重定向地址
     response = requests.get(url, headers=headers, allow_redirects=False, verify=False)

     item_id = getMidString(response.headers["Location"], 'item_id=', '&tag=')

     api_url = 'https://share.huoshan.com/api/item/info?item_id=' + item_id

     api_response = requests.get(api_url, headers=headers, verify=False).json()

     waterMarkVideo = api_response['data']['item_info']['url']

     # 替换reflow为resource mark=2为mark=0
     noWaterMarkVideo = waterMarkVideo.replace('reflow', 'source').replace('mark=2', 'mark=0')
     print('解析完成,视频去水印后的实际地址是:')

     print(noWaterMarkVideo)
     return noWaterMarkVideo

def videodown(url):
     res = requests.get(url, headers={'user-agent': 'chrome'})
     total_size = round(int(res.headers["Content-Length"]) / 1024 / 1024)
     print('解析完成,视频大小为:' + str(total_size) + 'MB。现在开始下载。')
     with open(f'houshan.mp4', 'wb') as f:
     for chunk in tqdm(iterable=res.iter_content(1024 * 1024), total=total_size, unit='KB'): \
         f.write(chunk)
     print('下载完成。')



if __name__ == '__main__':
     # huoshanurl = input('请输入火山小视频分享地址:')
     # getRealUrl('https://share.huoshan.com/hotsoon/s/y1DoVie0Vk8/')
     huoshanurl0 = input('请输入复制的火山小视频的分享链接:')  # 如:https://v.douyin.com/JVFp8r5/
     huoshanurl = re.findall('https://share.huoshan.com/hotsoon/s/.*?/', huoshanurl0)[0]  # 链接解析
     # inp = 'https://v.douyin.com/' + inp +'/'
     # inp = 'https://v.douyin.com/ewGMnvH/'
     print('短视频实际地址是:' + huoshanurl + '。现在开始解析。')
     print('解析完成,可点击下列链接打开或下载无水印视频。')
     rurl = getRealUrl(huoshanurl)
     videodown(rurl)
     # exit()

代码中保留了调试步骤,仅作参考。

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
luckydog200 + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

y29111150 发表于 2021-9-16 10:40
这个可以有
zhankaiwu 发表于 2021-9-16 10:47
火山小视频老是给我推性感、熊大的、视频给我!!!
Prozacs 发表于 2021-9-16 10:49
zhankaiwu 发表于 2021-9-16 10:47
火山小视频老是给我推性感、熊大的、视频给我!!!

大数据还是懂你
枫叶工作室 发表于 2021-9-16 10:52
支持一下
xtkj 发表于 2021-9-16 11:02
谢谢。。。
lj2017 发表于 2021-9-16 11:04
谢谢分享
ynboyinkm 发表于 2021-9-16 11:48
感谢分享,努力学习python中
我是123456 发表于 2022-7-26 16:41
支持支持
baozi888 发表于 2023-5-16 14:12
大神,这个如何执行,不会用,请指教
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-11 22:57

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表