快手解析视频真实链接(爬取快手视频)
时间:2022-07-26
本文章向大家介绍快手解析视频真实链接(爬取快手视频),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
[快手解析视频真实链接(爬取快手视频)]
1.复制快手视频链接(如下)
陪伴是最常情的告白,守护是最沉默的陪伴…… #汪星人 #宠物避障挑战 https://v.kuaishou.com/5xXNiL 复制此链接,打开【快手App】直接观看!
虚拟链接是:https://v.kuaishou.com/5xXNiL
2.代码解析真实链接(这里就不介绍代码,有问题可以留言)
# -*- coding: utf-8 -*-
"""
Created on Fri May 15 13:17:21 2020
@author: 李运辰
"""
import requests
requests.packages.urllib3.disable_warnings()
headers = {
#
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36",
}
headers2 = {
#"Host":"music.liuzhijin.cn",
"Host": "live.kuaishou.com",
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36",
"Cookie": "did=web_c0f3196ec94d4837b5f7850e3ebac3b9; didv=1589520098000; clientid=3; client_key=65890b29",
}
def geturl(url0):
#url0="https://v.kuaishou.com/5loz4u"
res0 = requests.get(url0,headers=headers,verify=False)
"""转接第二段"""
cookie = res0.cookies.get_dict()
cookie = str(cookie).replace("{","").replace("}","").replace(" ","").replace("'","").replace(",",";")
headers3 ={
"Host": "v.kuaishou.com",
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36",
"Cookie":cookie.replace(":","=")
}
headers4 ={
"Host": "live.kuaishou.com",
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36",
"Cookie":cookie.replace(":","=")
}
res1 = requests.get(url0,headers=headers3,allow_redirects=False)
url2 = res1.headers['Location']
url_00 = url2.split("userId=")[1].split("&")[0]
"""第一部分url"""
url_0=url2.split("?")[0].split("/")[-1]
res2 = requests.get(url2,headers=headers3,allow_redirects=False).request.headers
"""第二部分url"""
url_1 = res2['Cookie'].split(";")[-1].replace(":","=")
"""完整url"""
url = "https://live.kuaishou.com/u/"+url_00+"/"+url_0+"?"+url_1
#print(url)
response = requests.get(url,headers=headers4)
text = response.text
"""视频链接"""
v_url =text.split('"playUrl":"')[1].split(".mp4")[0]+".mp4"
v_url = v_url.replace("u002F","")
#print(v_url)
return v_url
st="陪伴是最常情的告白,守护是最沉默的陪伴…… #汪星人 #宠物避障挑战 https://v.kuaishou.com/5xXNiL 复制此链接,打开【快手App】直接观看!"
st ="http"+(st.split("复制")[0].split("http")[1].replace(" ",""))
u = geturl(st)
print(u)
3.解析结果如下:
感谢优秀的你关注我
~ 正在学习爬虫的你,可以在“学习资料”专栏获取学习资料 如果需要哪些python有关的学习资料,欢迎留言~
- 合并两个排序的链表
- 还有5天,你的比特币最重要的孩子UB-UBTC 可能就永远不属于你了
- Spark SQL 用户自定义函数UDF、用户自定义聚合函数UDAF 教程(Java踩坑教学版)
- Webpack多入口文件、热更新等体验
- 从hello world 解析程序运行机制
- 万达大量员工“被”辞职?曲德君回应:万达网科没有倒
- iOS Programming – 触摸事件处理(2)
- 洋葱海外仓融资2亿元 官网启用msyc.cc域名
- Webpack单元测试,e2e测试
- [看图说话] 基于Spark UI性能优化与调试——初级篇
- Unix下c程序内存泄露检测工具
- 查找链表中倒数第k个结点
- 12日29日人力科技前沿资讯
- 一段奇葩Javascript代码引发的思考
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法