Pergunta

Estou escrevendo um chicote de teste no Python e, como parte dos testes, preciso inicializar um servidor FTP e fazer upload de vários arquivos. Estou usando o ftplib e tudo está funcionando bem. O único problema que tenho é que estou vendo um monte de texto FTP aparecendo na janela do console misturada com os resultados dos meus testes, o que torna a digitalização dos resultados bastante complicados. Eu não encontrei uma maneira de fechar a FTP Lib e impedir que isso aconteça, alguém sabe como parar isso?

Foi útil?

Solução

Você precisa passar manualmente em retorno de chamada vazio (ou de outra forma personalizado) para pelo menos TRABALHAR e dir. Por padrão, eles imprimem para stdout (design questionável). Por padrão, chamadas (provavelmente para depuração) como

myFTP.retrlines(command)
myFTP.dir(someDir)

Imprimirá o seu terminal. Remova -os ou use retornos de chamada personalizados:

myFTP.retrlines(command, retrlinesCallback)
myFTP.dir(someDir, dirCallback)

retrlinesCallback e dirCallback As funções podem ter uma lógica para imprimir em EG no terminal apenas se a depuração estiver ativada.

Há também um set_debuglevel opção. O padrão é 0 (sem depuração), mas pode ser definido em algum lugar no código.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top