使用子过程通过cookie获取文件的大小

时间:2019-04-15 21:57:40

标签: python-3.x curl subprocess

我具有以下功能

def get_files(paths):
    for path in paths:
        file_name = parse_path(path)
        csv_command = "curl -b ./cookie {} > ./tmp/{}".format(path, file_name)
        check_file_size(path)
        subprocess.run([csv_command], shell=True, stdout=subprocess.DEVNULL)
    print("success")


def check_file_size(path):
    csv_command = "curl -sI ./cookie {}".format(path)
    subprocess.run([csv_command], shell=True, stdout=subprocess.DEVNULL)

我目前能够从cookie中下载并检索我要查找的文件。在下载文件之前,我想检查一下所述文件的大小并将其保存在内存中。我该怎么办?

1 个答案:

答案 0 :(得分:0)

无法通过Cookie检查文件的大小。解决方法是在lambda端设置缓冲区限制,当尝试从cookie中读取文件时,只要读入最大缓冲区量,如果文件大于缓冲区量,则会引发错误。