在网上调用别人的接口来实现的功能

import requests
import execjs# 生成参数s
def generateStr(a):js = '''test = function(a) {var c = function() {for (var d = 0,f = new Array(256), g = 0; 256 != g; ++g) {d = g,d = 1 & d ? -306674912 ^ d >>> 1 : d >>> 1,d = 1 & d ? -306674912 ^ d >>> 1 : d >>> 1,d = 1 & d ? -306674912 ^ d >>> 1 : d >>> 1,d = 1 & d ? -306674912 ^ d >>> 1 : d >>> 1,d = 1 & d ? -306674912 ^ d >>> 1 : d >>> 1,d = 1 & d ? -306674912 ^ d >>> 1 : d >>> 1,d = 1 & d ? -306674912 ^ d >>> 1 : d >>> 1,d = 1 & d ? -306674912 ^ d >>> 1 : d >>> 1,f[g] = d}return "undefined" != typeof Int32Array ? new Int32Array(f) : f} (),b = function(g) {for (var j, k, h = -1,f = 0,d = g.length; f < d;) {j = g.charCodeAt(f++),j < 128 ? h = h >>> 8 ^ c[255 & (h ^ j)] : j < 2048 ? (h = h >>> 8 ^ c[255 & (h ^ (192 | j >> 6 & 31))], h = h >>> 8 ^ c[255 & (h ^ (128 | 63 & j))]) : j >= 55296 && j < 57344 ? (j = (1023 & j) + 64, k = 1023 & g.charCodeAt(f++), h = h >>> 8 ^ c[255 & (h ^ (240 | j >> 8 & 7))], h = h >>> 8 ^ c[255 & (h ^ (128 | j >> 2 & 63))], h = h >>> 8 ^ c[255 & (h ^ (128 | k >> 6 & 15 | (3 & j) << 4))], h = h >>> 8 ^ c[255 & (h ^ (128 | 63 & k))]) : (h = h >>> 8 ^ c[255 & (h ^ (224 | j >> 12 & 15))], h = h >>> 8 ^ c[255 & (h ^ (128 | j >> 6 & 63))], h = h >>> 8 ^ c[255 & (h ^ (128 | 63 & j))])}return h ^ -1};return b(a) >>> 0}'''ctx = execjs.compile(js)return ctx.call('test', a)def run():# 第一次访问的url(获取cookie)base_url = 'http://douyin.iiilab.com'# 解析urlurl = 'http://service0.iiilab.com/video/web/douyin'# link = 'http://v.douyin.com/d3pqo9/'# 抖音需要去水印的链接link = input('请输入链接\n')# r是随机数r = execjs.eval('Math.random().toString(10).substring(2)')# s是根据随机数r一定的规则生成的(太长不想分析, 直接用execjs这个库直接跑js代码)s = generateStr('{}@{}'.format(link, r))headers = {'Host': 'douyin.iiilab.com','User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3514.0 Safari/537.36','Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8','Accept': 'application/json, text/javascript, */*; q=0.01','Pragma': 'no-cache','Cache-Control': 'no-cache','Accept-Encoding': 'gzip,deflate','Accept-Language': 'zh-CN,zh;q=0.9'}data = {'link': link,'r': r,'s': s}# 使用requests的session保留cookiessess = requests.Session()# 要加入headers,不然报错sess.headers.update(headers)# 模拟正常访问网页获取cookiesres = sess.get(base_url)headers = {'Host': 'service0.iiilab.com','Origin': 'http://douyin.iiilab.com','Referer': 'http://douyin.iiilab.com/','User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3514.0 Safari/537.36','Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8','Accept': 'application/json, text/javascript, */*; q=0.01','Pragma': 'no-cache','Cache-Control': 'no-cache','Accept-Encoding': 'gzip,deflate','Accept-Language': 'zh-CN,zh;q=0.9'}sess.headers.update(headers)# 获取返回的数据res = sess.post(url, data=data, headers=headers).json()if res['retCode'] == 200:print(res)# 封面cover = res['data']['cover']# 标题title = res['data']['text']# 去水印后的视频video = res['data']['video']else:print(res)if __name__ == '__main__':run()

1024程序员节 - 分享一个抖音视频下载程序相关推荐

  1. 一个抖音视频下载代码

    2019独角兽企业重金招聘Python工程师标准>>> <dependencies><dependency><groupId>cn.hutool& ...

  2. 如何使用 Python 开发一个【抖音视频下载神器】

    国外有个在线网站,专门帮别人下载 YouTube 上面的视频,功能很简单直接,就是把你想要的 youtube 视频地址复制进去,然后点击 start 就可以下载视频: 不过,当你点击下载的时候,会跳转 ...

  3. 爬虫+pyqt5 打造属于自己的抖音视频下载器

    前言:最近一段时间在家经常会用抖音来度过娱乐时间,经常会直接通过抖音软件向好友分享视频.自己无聊至极就花了一上午的时间做了一个PC端的抖音视频下载器. 郑重申明:该文章介绍的技术仅供用于学习,不可恶意 ...

  4. 手写一个抖音视频去水印工具,千万别刚一个程序员

    百因必有果 说一下我为什么要做个抖音视频去水印工具,其实是因为我的沙雕女友,她居然刚我~ 有天晚上她在抖音看见一个非常具有 教育意义 的视频,"男人疼媳妇就该承包全部家务活",然后 ...

  5. 抖音视频下载改md5

             抖音视频下载改md5          继续发帖:有人发布了为期三天的渔网两天,无法继续创建,因此无法通过人工审核快速通过            点击  关注祥瑞自媒体,了解更多视频 ...

  6. 手写一个抖音视频去水印Java工具,千万别刚一个程序员

    关注公众号后台回复pay或mall获取实战项目资料+视频 百因必有果 说一下我为什么要做个抖音视频去水印工具,其实是因为我的沙雕女友,她居然刚我~ 有天晚上她在抖音看见一个非常具有 教育意义 的视频, ...

  7. 分享一个抖音刷视频的python代码

    前一段时间总是给我推送抖音刷视频的广告,有点好奇就下了个,确实是能刷到点现金,但是也不喜欢看小视频,就在网上找攻略怎么用python刷视频,代码如下: import os import timeb = ...

  8. python,抖音视频下载

    python和tkinter制作得抖音下载器 输入抖音分享链接,个人名片-链接形式 , 现在用抖音红人 面筋哥做测试:http://v.douyin.com/d5xrhV/点击GO 每个视频都截图了1 ...

  9. 抖音里面html相册代码大全,分享一下抖音上火的程序员女朋友相册代码

    抖音上火爆的3D旋转相册代码,纯H5写出来效果是这样的: 鼠标移动上去裂变. 直接上代码 css部分:html{ background:linear-gradient(#FF6666 0%,#3366 ...

最新文章

  1. Window下JDK安装教程
  2. java swing 控件拖动_java swing中实现拖拽功能示例
  3. Spring MVC:带有CNVR卷的REST应用程序。 2
  4. 福州java培训哪里好_南通java培训哪家好
  5. 高中计算机学考操作ppt,高中信息技术基础学考专题复习(共25张PPT)
  6. 阿里云发布多款云管工具,任何角色都可以轻松完成云上运维
  7. Matlab2018a安装成功后,打开出现licensing error:-8523
  8. 【基础】【后台】 微信小程序 - 腾讯云 - wafer2 - PHP - DEMO - 003 - 源码分析 - 02 - 路由
  9. Office与Visio同事安装兼容问题
  10. 牛客 2021年度训练联盟热身训练赛第二场 B题
  11. 快1倍,我在 M1 Max 上开发 iOS 应用有了这些发现
  12. 解决问题---docker:transport: dial unix:///var/run/docker/containerd/docker-containerd.sock: time
  13. Java数据库连接协议JDBC学习
  14. 19春招多益网络前端笔试题
  15. 线性代数感悟之4 通过增广矩阵查看解的情况上篇
  16. 802.11 ------ Beacon帧、Beacon Interval、TBTT、Listen Interval、TIM、DTIM
  17. [渝粤教育] 商丘职业技术学院 Java Web应用程序开发 参考 资料
  18. 安卓应用在各大应用市场上架方法
  19. Spark学习-DAY4
  20. 贝尔宾九种团队角色理论总结(转)

热门文章

  1. win10 记事本居然默认改成 Unix (LF)
  2. 武器装备自动测试(ATE)系统设计要点
  3. 2022千乐微云技术学习任务计划
  4. 【开发工具】AR原型的浏览器扩展
  5. 金为什么可以生水?水为什么可以生木?
  6. C语言中的逻辑运算符
  7. Go开发 之 Go的 9个 基本命令
  8. http请求xml的报文接口
  9. HTTP响应报文的结构组成
  10. windowssupport 驱动下载_Mac电脑如何下载Windows支持软件?