zaxtyson / LanZouCloud-API

蓝奏云网盘第三方 API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

get_file_info_by_url方法失效,导致无法下载及临时解决办法

nhnhwsnh opened this issue · comments

问题描述:down_dir_by_url, down_file_by_url等下载方法均失效
解决思路:

手动请求了https://wwu.lanzoui.com/fn?UzVa.......mB 地址后,服务器返回内容如下

		var ajaxdata = 'xxx';
		//var ispostdowns = '';
		var websignkey = 'xxxx';
		var websign = '2';
		$.ajax({
			type : 'post',
			url : '/ajaxm.php',
			data : { 'action':'downprocess','signs':ajaxdata,'sign':'xxxxxxxxxxxxxxxxxxxxxxxAJpU2BXZg_c_c','ves':1,'websign':websign,'websignkey':websignkey },
			//data : { 'action':'downprocess','sign':sign,'sign':sign,'ves':1},
			dataType : 'json',
			success:function(msg){
......

定位到 .........\site-packages\lanzou\api\core.py的get_file_info_by_url方法,修改相应代码

在514行后,插入如下内容

ajaxdata = re.search(r"var ajaxdata\s*=\s*'(.+?)';", first_page).group(1)
websign = re.search(r"var websign\s*=\s*'(.+?)';", first_page).group(1)
websignkey = re.search(r"var websignkey\s*=\s*'(.+?)';", first_page).group(1)
post_data = {'action': 'downprocess', 'signs': ajaxdata, 'sign': sign, 'ves': 1, 'websign': websign,
             'websignkey': websignkey}

结果:截止提交issue时,修改过的代码,可以下载~

能给一些测试用的文件链接么,我测试了几个链接和文件夹,似乎都下载成功了,没法复现🤔。
在我测试文件链接中,first_page 页面并没有出现 var websign ,可能是官方加了什么验证,达到什么条件才能触发

https://wwu.lanzoui.com/b030us25e密码cfr3

目前,我这边下载的内容多是txt小说,基本都有websign的(大于90%)

您说的,可能是在某些条件下触发的

确实URL不一样,后面跟了一个 webpage 参数: https://pan.lanzouo.com/ipy3f01xq1da?webpage=U2IHZlw1DmIIZgNtBWZdals4BjADIFRgATNSYF01BDMBNgVrWjcAKFI1
去掉这个参数就需要密码,而且链接有时效性,不知道官方又在搞什么🤷‍♂️