aligo
aligo copied to clipboard
example 16代码已无法运行
操作系统信息 15:48:30.238 aligo.INFO aligo 版本 6.0.1 15:48:30.238 aligo.INFO MacOS 操作系统 错误描述 直接下载example 16的代码进行运行,以下提示
File "/Users/xxx/Downloads/x16.py", line 10, in tree_share
file_list = ali.get_share_file_list(share_id, share_token, parent_file_id=parent_file_id)
TypeError: get_share_file_list() got multiple values for argument 'parent_file_id
进方法中看了下,最新的方法参数里面已经不需要传share_id参数
但如果将
file_list = ali.get_share_file_list(share_id, share_token, parent_file_id=parent_file_id)
改为
file_list = ali.get_share_file_list( share_token, parent_file_id=parent_file_id)
会提示
raise InvalidHeader(
requests.exceptions.InvalidHeader: Header part ('xxxxx'} must be of type str or bytes, not <class 'aligo.response.GetShareTokenResponse.GetShareTokenResponse'>
看了方法上的提示,将代码改成如下,添加了body,并且将share_token强制转成str
def tree_share(share_id, share_token, parent_file_id='root'):
body = GetShareFileListRequest(share_id=share_id)
file_list = ali.get_share_file_list(share_token,body=body, parent_file_id=parent_file_id)
for file in file_list:
print(file.name)
all_files.append(file)
if file.type == 'folder':
print(file.file_id)
tree_share(share_id,share_token, file.file_id)
tree_share(share_id, str(share_token))
但是这样会一直递归死循环,还请大佬指点一下
这个升级 requests 就可以了
requests!=2.8.*
这个升级 requests 就可以了
requests!=2.8.*
我的requests是2.31.0一样出现下面这个提示:
File "/Users/xxx/Downloads/x16.py", line 10, in tree_share
file_list = ali.get_share_file_list(share_id, share_token, parent_file_id=parent_file_id)
TypeError: get_share_file_list() got multiple values for argument 'parent_file_id
这样试试
file_list = ali.get_share_file_list(share_token, parent_file_id=parent_file_id)