python实现云播放_[原创]Python实现蓝奏云文件解析

注意:

-新手上路,代码写得不好请多见谅

-若要将此脚本应用于软件更新,需要自行添加检查版本号的语句

-使用的UA似乎为手机版,文章是完成脚本后写的,可能会有冲突(尽量避免)

-下载链接见结尾 / 评论区8b22ab26ef493287a87a82da4f4b89c6.png

思路:

最开始想给另一个自制的软件提供自动更新用,但是那个软件鸽了,所以做了这个

1.我们先来打开个分享链接(https://xxxx.lanzoux.com/xxxxxxxx)c53ddaea9089249d8bf1cafa71d77499.png获取到的页面

设置UA为“Mozilla/5.0 (iPhone; CPU iPhone OS 11_0_1 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A402 Safari/604.1”(手机版)

使用python中requests库中的get获取此页面,可以看到一大堆有的没的的东西39e85b7f0337dab288c38f0c7118cb64.png获取的东西

复制进vscode,可以发现在第41行有我们需要的按钮,所以接下来思路要跟他走057809bb95749531fa58d925291b70c1.png我们接下来需要获取的东西

2.获取按钮

代码第93 - 111行

选中需要获取的信息,可以看到他的位置在/html/body/div/div/a中的herf里1f8d6b0a929dd3372e91dedbfd95d2d0.png

开始获取这段信息,import库lxml中的etree,使用

str(html.xpath('/html/body/div/div/a/@href')).replace("'",'').replace('[','').replace(']','')

获取”/tp/iOOPLewdffe“。

接着进入这个链接,比如我这里就是 "xxxx.lanzoux.com/tp/iOOPLewdffe"b34c709b38ee8e534ccb59111656d8ac.pngxxxx.lanzoux.com/tp/iOOPLewdffe中的内容

可以看到下载按钮出来了,胜利近在咫尺,只需要获取这个按钮的内容就可以下载了

3.重复步骤

代码第29 - 42行

重复get的步骤来获取这个链接,看到在获取的内容的50-70行有以下内容8af3ecd7164d7fc70c132f355f7bbb45.png获取到的内容

此时我的大脑:这XX什么玩意??

这里并没有下载链接,只有一堆function,于是我去看了下下载网址0097d65be796f8bbf1a80ed0d88bf3e2.png下载的URL

啊....这.....

他把domainload和 71 行一大堆字符加起来就得到了下载链接

看着很简单,所以我到无万能的百度去搜了“python中etree怎么获取function”

整整两小时,除了脑袋晕以外其他什么都没找到

只好放弃这个方法,用老split勉强实现(你该去学学正则了)28520122cdacf77b693d8d0a3fdf960a.png用于实现功能的代码

BUTT,当我把下载地址用get进行下载的时候

我获得的只是个 133 行的html(当时心情:你个茄子啊????)

经过半小时的心情恢复,我在 107 - 111 行找到了以下内容4ea73cf975a2570048096159bc471f2e.png令人感到十分茄子的内容(wd..

辣么,根据这个post来看,我只需要把data都一股脑的post到ajax.php就行了对吧

对,这次真对了。

代码第43 - 88行,包含进度下载db03e18d95e55b5bf649318bd6342c7e.pngOHHHHHHHHHHHHHHHHHH

成功!8b22ab26ef493287a87a82da4f4b89c6.png

4.自动更新,获取简介,版本,更新网址

代码第12 - 26行

be08ae0f78cbebaffe732f3732a201bf.png12-26行

这里我使用了文件夹中的“话说”65b8140f6a1173190dc985bbd25d17fb.png话说

使用“@”符号作为分隔符,分割出了文件的链接,版本号(0.0.1那里)和openid(可以用作更新的说明,10800那里)

8b22ab26ef493287a87a82da4f4b89c6.png

如何使用:

1.在蓝奏云新建一个文件夹,修改话说

话说的格式为:

【更新文件的分享链接】@【更新的说明】@【版本号】

例如我要将part3.mp3作为【更新文件的分享链接】

1.1   分享出part3.MP3的分享地址4e600068ed513bc3dcb16e0b44ca4844.png1.1

1.2  复制链接5eab2e20726534aad01ac9f701ae028c.png1.2

1.3  复制到话说

df2baf5d181bfc3094cb4046929c022e.png1.3

1.4  加俩“@”,@中间要有东西,随便在中间加点东西

5830bac84ffa38ec763e578da3a6c931.png1.4

1.5  关闭文件夹的密码

0c6ca15806383f97aa6050e73622b16d.png1.5

1.6  分享该文件夹,获取到的链接输入到代码第 17 行内

b0b502470a857be730b09aaca0e7ef87.png1.6

完成

8b22ab26ef493287a87a82da4f4b89c6.png

后话:

-由于没学正则表达式,许多功能都只能勉强实现(这里的勉强指的是可以用,但是页面内容一变就失效)

-最后那个post的过程中,我发现了似乎get也能下载(发布的就是用的get)

-如果要用作更新器,请删除114行,并在113行输入类似内容,并且需要自己获取目前版本

e61b8ba092508ae9753358044da64298.png目前版本是需输入的内容

下载链接:https://ntgpro.lanzoux.com/iUu9Lkh5nte

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值