利用腾讯云函数做蓝奏云解析API
利用腾讯云函数做蓝奏云解析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相关推荐
- 蓝奏云直链解析API接口
请求地址 HTTPGET https://www.youwk.cn/api/lanzou 请求参数 参数名 参数说明 key 用户请求密钥,可在 密钥管理页面 申请 url 蓝奏云分享地址 p 蓝奏云 ...
- WordPress使用SQL语句批量替换失效的蓝奏云下载地址
现在很多站长都用蓝奏盘作为网盘存储下载的资源,但是蓝奏盘链接很不稳定经常失效需要替换,如果量小一个一个替换还好,而本站所分享的资源,几乎都是蓝奏云分享的下载链接,文章一个个编辑替换工作量非常巨大,站长 ...
- 蓝奏云获取直API源码
介绍: LanZou_API: 蓝奏云获取直链/蓝奏云直链 使用方法: url:蓝奏云外链链接 pwd:外链密码 type:直接下载 支持链接: *.lanzous.com *.lanzoui.com ...
- 最新!使用Python爬取蓝奏云文件下载直链并下载,支持批量爬取,已封装为函数,可直接使用(含注释、库的使用解释)
程序说明 本程序不借助第三方网站来获取蓝奏云直链,那样没意思,且程序流程已经过分块化处理(多函数),方便理解和阅读.程序使用了requests.re.lxml库,来请求.解析数据.具有一定学习价值,对 ...
- 蓝奏云数值验证码识别,python调用虹鱼图灵识别插件,超高正确率
识别验证码一直是本人想要做的事情,一直在接触按键精灵,了解到有一个虹鱼图灵识别插件专门做验证码和图像识别,原理就是图片处理和制作字库识别,制作字库我一直觉得很麻烦,工程量太大.不管怎样,它能用能达到我 ...
- 验证码识别的原理python_蓝奏云数值验证码识别,python调用虹鱼图灵识别插件,超高正确率...
本帖最后由 打字的小强 于 2020-6-5 13:11 编辑 识别验证码一直是本人想要做的事情,一直在接触按键精灵,了解到有一个虹鱼图灵识别插件专门做验证码和图像识别,原理就是图片处理和制作字库识别 ...
- 蓝奏云批量下载 with urllib3 — Python39
万能的群友经常会发蓝色链接,其中有一些蓝色的蓝奏云,看见那么多学习资料实在是馋得很,必须全部拿下. 话不多说,直接开始. index 0.引用包 1.分析 2.过程 3.整理 4.完整代码 0.引用包 ...
- 蓝奏云文件上传php源码_蓝奏云客户端 v0.3.1,第三方蓝奏网盘电脑版
圆桌效率,让生活更有序,让工作更高效! 1.软件介绍 蓝奏云客户端,采用蓝奏云API项目使用PyQt5实现图形界面,蓝奏云盘API项目实现了对蓝奏网盘的基本操作: 登录.列出文件.下载文件.上传文件. ...
- php蓝奏云解析源码,PHP获取蓝奏云直链解析源码
PHP获取蓝奏云直链的源码案例 可以用来做api调用到网站做下载 调用方法: 无密码:http://www.yyob.com/lanzou/?url=https://www.lanzous.com/i ...
最新文章
- H5地理定位获取用户当前位置、城市
- Ansible之playbook(剧本)介绍和配置详解
- Linux下配置和安装VNCServer远程服务
- 10.傅里叶变换——达利画家、基集(Basis Set)、傅里叶级数(Fourier Series)_1
- Json——使用Json jar包实现Json字符串与Java对象或集合之间的互相转换
- PaddlePaddle(1)——让人拍案叫绝的创意都是如何诞生的
- IT项目管理之系统规划
- SPSS学习笔记(二)T检验
- 电力拖动计算机控制系统讲什么,《电力拖动自动控制系统》教学大纲概要
- petalinux 2020.2 安装教程,基于ubuntu20.04.LTS版本
- 简单阻抗匹配电路及公式
- 数模笔记之“Q值分配法、比例加惯例(D‘Hondt)” matlab代码
- SQL Server Performance 分析
- 清除IBM小型机橙色告警灯方法
- 年终总结 | 怎样识别并投资高效能人才?
- Linux下ps -ef 和 ps aux 的区别及格式详解
- 阿里P8亲自教你!Android高级工程师进阶学习,全套教学资料
- MySQL 两张表关联更新(用一个表的数据更新另一个表的数据)两个表使用条件从另外一个表获取数据更新本表
- 根据Email地址跳转到邮箱登录界面
- 全志Tina Linux Camera 摄像头模块开发指南 全网最详细版本支持百问网T113-Pro DongshanPI-NezhaD1-H DongshanPI-D1s V853-Pro等开发板