Проблемы с python io.BytesIO для обработки большого контента - PullRequest
0 голосов
/ 26 апреля 2020

В настоящее время я использую pysftp с io для анализа некоторых документов на сервере. Проблема возникла, когда есть чрезвычайно большой do c. Вот мой код:

with pysftp.Connection(host=myHostname, username=user_name, password=pass_word, private_key=".ppk", cnopts=cnopts) as mysftp:
    with io.BytesIO() as fl:
        mysftp.getfo(TargetDoc,fl) 
        content=fl.getvalue()

Когда TargetDo c имеет экстремально большой размер, выполнение шага занимает много времени, и когда-нибудь он будет выгнан сервером. Так как я хочу разобрать только первые несколько строк TargetDo c. Есть ли идеал о том, как частично разобрать do c? Любые предложения или советы будут оценены. Большое спасибо.

1 Ответ

0 голосов
/ 26 апреля 2020

После долгих раздумий я нашел способ подойти к этой задаче ...

with pysftp.Connection(host=myHostname, username=usn, password=psw, private_key=".ppk", cnopts=cnopts) as mysftp:
    with mysftp.open(TargetPath,mode='r',bufsize=-1) as f:
        line=f.readline()

Надеюсь, что это может помочь кому-то еще в будущем.

...