网页视频抓取脚本(挑选你感兴趣的分类--js )

优采云 发布时间: 2022-03-07 14:02

  网页视频抓取脚本(挑选你感兴趣的分类--js

)

  选择您感兴趣的类别

  根据首页地址获取详情页超链接的跳转地址

  

  找到对应的加密视频播放地址数据

  

  此数据为静态网页数据,js代码解码

  找到对应的解析代码

  先找到视频的播放地址

  找到解析视频地址的加密js文件

  点击播放会触发文件

  

  大致可以看出这是base64加密的数据

  在对应的js文件中搜索关键字

  找到js的加密方式

  

  js函数部分函数的使用

  

# eplace()方法用于在字符串中用一些字符替换另一些字符 # parseInt 数据转换成对应的整型 # base64.atob 对base64编码过的字符串进行解码 # substring 方法可在字符串中抽取从 start 下标开始的指定数目的字符

  

  将 js 代码转换为 Python 代码

  

import base64 def decode(data): def getHex(a): return { 'str': a[4:], 'hex': ''.join(list(a[:4])[::-1]), } def getDec(a): b = str(int(a, 16)) return { 'pre': list(b[:2]), 'tail': list(b[2:]), } def substr(a, b): c = a[0: int(b[0])] d = a[int(b[0]): int(b[0]) + int(b[1])] return c + a[int(b[0]):].replace(d, "") def getPos(a, b): b[0] = len(a) - int(b[0]) - int(b[1]) return b b = getHex(data) c = getDec(b['hex']) d = substr(b['str'], c['pre']) return base64.b64decode(substr(d, getPos(d, c['tail']))) print(decode("e121Ly9tBrI84RdnZpZGVvMTAubWVpdHVkYXRhLmNvbS82MGJjZDcwNTE3NGZieXBueG5udnRwMTA5N19IMjY0XzFfNWY3YThmM2U0MTEwNy5tc2JVjAu3EDQ="))

  获取最终视频播放地址

  

  

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线