另一大短视频网址无水印下载,爱了吗?

前言

一、爬虫思路

二、代码实现

1.引入库,设置UA

2.获得首次请求,提取源链接

3.通过真链接获取响应保存数据

总结

前言
呐,GoGoGO!!!再次走上爬虫道路了,这次的目标是一个叫“手慢无”的短视频网址,某音下载搞定之后,这几月忘了登陆密码就一直刷手手了,虽然可以直接分享微信好友但是带着自己的大名简直太烦了,找了找资料后研究出来了无水印下载视频方法,代码不多全是干货。由于事发突然,只搞了爬取短视频的代码。

手手说,你爬到了我的无水印,也爬不到我的精美图集。

提示:以下是本篇文章正文内容,下面案例可供参考

一、爬虫思路
1)首先确立目标:短视频单个视频链接(这个是我最近非常喜欢的视频了,太甜了,扛不住)

https://www.kuaishou.com/short-video/3xij3j4f5avjiua?authorId=3xv7ci7tvjdmubi&streamSource=find&area=homexxbrilliant

2)然后分析:目标网站机制问题,需要先通过抓包找到真正视频链接 ,这个很长的链接很明显就是真正链接。但是我们要在源代码界面找到可播放python可利用的链接。
请添加图片描述
请添加图片描述

将长链接输入直接转到视频原链接观看。可知,这个长的转码链接就是视频源链接,后面爬取二进制文件保存为MP4文件就很简单了。

3)问题来了,如何在视频界面源代码中找到视频源链接?
请添加图片描述

上面是源代码界面,挺复杂的,需要用心找,像是视频播放地址的多试几次,最后成功找到真正可播放链接。

请添加图片描述

所以可知其前后转码字符,通过正则表达式匹配后进行Unicode解码可提取出真正链接。(悄悄话:抖音的是URL转解码)

二、代码实现
1.引入库,设置UA
代码如下(示例):

import re
import requests
from fake_useragent import UserAgent


headers = {
            'refer': 'https://www.kuaishou.com/',
            'User-Agent': str(UserAgent().random)
            }

2.获得首次请求,获得源代码提取源链接

进行源代码解析,利用正则表达式提取标题及视频链接
解码方法步骤在代码
代码如下(示例):

url = input("请输入视频链接:\n")
res = requests.post(url, headers=headers)
# print(res.text)
print("开始解析-----\n")
# title = re.findall('<title data-react-helmet="true">(.*?) - 抖音</title>', res.text)[0]
# print(title)
src = re.findall('"photoUrl":"(.*?)",', res.text)[0]
# print(src)
video_url = src.encode(encoding='utf-8').decode('unicode_escape')  # Unicode解码
# print(video_url)
print("----成功获取视频源链接----")
title = re.findall('<title>(.*?)</title>', res.text)[0]

3.通过真链接获取响应保存数据
get请求获取二进制文件保存为MP4格式视频文件

resp = requests.get(url=video_url, headers=headers).content
# print(resp)
print("开始请求资源---")
with open(title + '.mp4', 'wb') as f:
    f.write(resp)
print("短视频:"+title+"\n----下载成功-----")

请添加图片描述

总结;

图片

以上就是今天要讲的内容,点个关注再走吧。

邓紫棋闭关半年带着新专辑来了,启示录,嗯~ o( ̄▽ ̄)o

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值