利用腾讯云函数做蓝奏云解析API

前言

忽然在网上看到网友说tenapi的蓝奏云解析不能用了,恰巧又在B站上看到某up主的相关文章,一时起意就用up主的代码稍加更改,改造了个能在腾讯云函数跑起来的版本。
博主原文链接:https://www.bilibili.com/read/cv12429600/
云函数压缩包资源:待会儿上传

阅读指南

Tips :如果你只是想搭建一个类似接口而不在乎他的原理,那么这段文字(废话)可以跳过了,后面有你想要的详细步骤,快去看吧

本文用到的编程知识:python,flask
本次搭建需要的资源你:腾讯云函数(快速flask示例)

代码

话不多说先看看代码吧

import requests
import re
import json
from flask import Flask,request,jsonifyclass lanzouyun:# 博主链接:https://www.bilibili.com/read/cv12429600/def __init__(self):self.headers = {'accept-language': 'zh-CN','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36','Referer': 'https://www.lanzoui.com/'}def lzy(self, url):html = requests.get(url=url, headers=self.headers).content.decode('utf-8')# 文件信息name = str(re.compile("<title>.*?- 蓝奏云").findall(html)).replace("['<title>","").replace(" - 蓝奏云']","")author = str(re.compile("分享用户:</span><font>.*?</font>").findall(html)).replace("['分享用户:</span><font>","").replace("</font>']","")time = str(re.compile("上传时间:</span>.*?<br>").findall(html)).replace("['上传时间:</span>","").replace("<br>']","")size = str(re.compile("文件大小:</span>.*?<br>").findall(html)).replace("['文件大小:</span>","").replace("<br>']","")# 获取链接fn = str(re.compile('src="(/fn?[^"]{10,})"', re.S).findall(html)).replace("['/", '').replace("']", '')html = requests.get(url="https://www.lanzoui.com/" + fn, headers=self.headers).content.decode('utf-8')sign = str(re.compile('[0-9a-zA-Z_]{70,}_c_c', re.S).findall(html)).replace("['", '').replace("']", '')action = re.search("action':'(.*?)'", html).group(1)html = requests.post(url="https://www.lanzoui.com/" + re.search("url : '/(.+?)'", html).group(1),data={'action': action, 'sign': sign, 'ves': '1'}, headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36','Referer': 'https://www.lanzous.com/' + fn})url = requests.get(json.loads(html.text)['dom'] + '/file/' + json.loads(html.text)['url'],allow_redirects=False, headers=self.headers)return name,author,time,size,url.next.urlapp = Flask(__name__)@app.route('/')
def index():source_url = request.args.get('url')if not source_url:returnJson = {"code": 201,"msg": "请输入需要解析的蓝奏链接"}return jsonify(returnJson)lzy = lanzouyun()name,author,time,size,url = lzy.lzy(source_url)returnJson = {"code": 200,"data": {"name": name,"author": author,"time": time,"size": size,"url": url}}return jsonify(returnJson)if __name__ == "__main__":app.run(host='0.0.0.0',port=9000)

搭建指南

第一步

你需要一个腾讯云账户,然后进入它的云函数界面选择:函数服务–》新建地址:https://console.cloud.tencent.com/scf/index

第二步

选择模板创建,点第二个Flask框架模板,继续点下一步

第三步

什么都不需要管,直接滑到最后,同意协议然后点完成

第四步


进入到图示界面,这时候函数准备好了,需要你上传代码部署了,有两种方式先说第一种
复制上面的代码覆盖掉原来的app.py文件里的内容,之后点开终端–》新终端,打开一个终端,在其中输入python3 -m pip install requests回车,安装requests库依赖,再点击部署就完成了
第二种方式,下载作者提供的云函数zip包,选择本地上传zip包,上传好后,点击部署即可!

恭喜你完成部署了

API使用

api调用方式为

函数地址?url=蓝奏云地址
比如说博主部署完云函数地址是https://service-ps0ygkto-1523487456.gz.apigw.tencentcs.com/release/
想要解析的蓝奏云地址为:https://yoyodadada.lanzouw.com/i3dy70h
那么调用地址是:https://service-ps0ygkto-1523487456.gz.apigw.tencentcs.com/release/?url=https://yoyodadada.lanzouw.com/i3dy70h
嗯你的云函数地址在,页面下滑就能看到喽

API返回

接下来说一下接口的返回
返回数据均为json格式,

成功返回示例

{"code": 200,"data": {"name": "文件名","author": "分享的作者","time": "上传日期","size": "文件大小","url": "文件直链下载地址"}
}

失败返回示例(不给url的情况)

{"code": 201,"msg": "请输入需要解析的蓝奏链接"
}

结束语

到此结束了,辛苦码字不易,如果文章对你有所帮助的话希望能顺手点赞收藏哦,
如果有什么问题也可以评论或者私信我,
最后,感谢你能看到这儿,你的鼓励我收到了也会记在心里的!

利用腾讯云函数做蓝奏云解析API相关推荐

  1. 蓝奏云直链解析API接口

    请求地址 HTTPGET https://www.youwk.cn/api/lanzou 请求参数 参数名 参数说明 key 用户请求密钥,可在 密钥管理页面 申请 url 蓝奏云分享地址 p 蓝奏云 ...

  2. WordPress使用SQL语句批量替换失效的蓝奏云下载地址

    现在很多站长都用蓝奏盘作为网盘存储下载的资源,但是蓝奏盘链接很不稳定经常失效需要替换,如果量小一个一个替换还好,而本站所分享的资源,几乎都是蓝奏云分享的下载链接,文章一个个编辑替换工作量非常巨大,站长 ...

  3. 蓝奏云获取直API源码

    介绍: LanZou_API: 蓝奏云获取直链/蓝奏云直链 使用方法: url:蓝奏云外链链接 pwd:外链密码 type:直接下载 支持链接: *.lanzous.com *.lanzoui.com ...

  4. 最新!使用Python爬取蓝奏云文件下载直链并下载,支持批量爬取,已封装为函数,可直接使用(含注释、库的使用解释)

    程序说明 本程序不借助第三方网站来获取蓝奏云直链,那样没意思,且程序流程已经过分块化处理(多函数),方便理解和阅读.程序使用了requests.re.lxml库,来请求.解析数据.具有一定学习价值,对 ...

  5. 蓝奏云数值验证码识别,python调用虹鱼图灵识别插件,超高正确率

    识别验证码一直是本人想要做的事情,一直在接触按键精灵,了解到有一个虹鱼图灵识别插件专门做验证码和图像识别,原理就是图片处理和制作字库识别,制作字库我一直觉得很麻烦,工程量太大.不管怎样,它能用能达到我 ...

  6. 验证码识别的原理python_蓝奏云数值验证码识别,python调用虹鱼图灵识别插件,超高正确率...

    本帖最后由 打字的小强 于 2020-6-5 13:11 编辑 识别验证码一直是本人想要做的事情,一直在接触按键精灵,了解到有一个虹鱼图灵识别插件专门做验证码和图像识别,原理就是图片处理和制作字库识别 ...

  7. 蓝奏云批量下载 with urllib3 — Python39

    万能的群友经常会发蓝色链接,其中有一些蓝色的蓝奏云,看见那么多学习资料实在是馋得很,必须全部拿下. 话不多说,直接开始. index 0.引用包 1.分析 2.过程 3.整理 4.完整代码 0.引用包 ...

  8. 蓝奏云文件上传php源码_蓝奏云客户端 v0.3.1,第三方蓝奏网盘电脑版

    圆桌效率,让生活更有序,让工作更高效! 1.软件介绍 蓝奏云客户端,采用蓝奏云API项目使用PyQt5实现图形界面,蓝奏云盘API项目实现了对蓝奏网盘的基本操作: 登录.列出文件.下载文件.上传文件. ...

  9. php蓝奏云解析源码,PHP获取蓝奏云直链解析源码

    PHP获取蓝奏云直链的源码案例 可以用来做api调用到网站做下载 调用方法: 无密码:http://www.yyob.com/lanzou/?url=https://www.lanzous.com/i ...

最新文章

  1. H5地理定位获取用户当前位置、城市
  2. Ansible之playbook(剧本)介绍和配置详解
  3. Linux下配置和安装VNCServer远程服务
  4. 10.傅里叶变换——达利画家、基集(Basis Set)、傅里叶级数(Fourier Series)_1
  5. Json——使用Json jar包实现Json字符串与Java对象或集合之间的互相转换
  6. PaddlePaddle(1)——让人拍案叫绝的创意都是如何诞生的
  7. IT项目管理之系统规划
  8. SPSS学习笔记(二)T检验
  9. 电力拖动计算机控制系统讲什么,《电力拖动自动控制系统》教学大纲概要
  10. petalinux 2020.2 安装教程,基于ubuntu20.04.LTS版本
  11. 简单阻抗匹配电路及公式
  12. 数模笔记之“Q值分配法、比例加惯例(D‘Hondt)” matlab代码
  13. SQL Server Performance 分析
  14. 清除IBM小型机橙色告警灯方法
  15. 年终总结 | 怎样识别并投资高效能人才?
  16. Linux下ps -ef 和 ps aux 的区别及格式详解
  17. 阿里P8亲自教你!Android高级工程师进阶学习,全套教学资料
  18. MySQL 两张表关联更新(用一个表的数据更新另一个表的数据)两个表使用条件从另外一个表获取数据更新本表
  19. 根据Email地址跳转到邮箱登录界面
  20. 全志Tina Linux Camera 摄像头模块开发指南 全网最详细版本支持百问网T113-Pro DongshanPI-NezhaD1-H DongshanPI-D1s V853-Pro等开发板

热门文章

  1. C语言零基础项目:打字母游戏!详细思路+源码分享
  2. 关于一个简单函数方程问题的深入探究
  3. POJ 1795 DNA Laboratory 已被翻译
  4. 2020厦门国际银行数创金融杯建模大赛(一)----赛题说明数据重塑Baseline
  5. 子线程何时开启、何时结束
  6. Mysql RR级别下如何解决幻读
  7. 【数据结构初阶】:栈和队列的实现(用C语言实现,附图详解和附源码)
  8. vi 撤销上一步操作
  9. 【Golang】Go 语言 XML 的序列与反序列化实践
  10. 线性代数学习-矩阵在电流计算中的应用