2016-12-16 50 views
1

我在python 2.7上使用pyftpdlib作爲我從代碼中調用的函數。該功能是basic example the pyftpdlib creators has to offerpyftpdlib模塊有內置打印,有沒有辦法禁用這個?

問題是,該模塊具有我想禁用的內置打印功能,或者至少使用戶無法看到它們,而無需修改模塊本身。

幫助?任何人?

在此先感謝,美里:)

+0

如果模塊採用'的print()'或'sys.stdout'那麼你可以自己的類分配給'sys.stdout'捕捉所有文本。但我不確定模塊是否會使用它。 – furas

+0

我該怎麼做,在哪裏做? –

+0

[將stdout重定向到Python中的文件](http://stackoverflow.com/questions/4675728/redirect-stdout-to-a-file-in-python) - 您可以將'stdout'重定向到文件或Linux上'/ dev/null' – furas

回答

0

pyftpdlib沒有print()秒。您在屏幕上看到的內容通過logging模塊打印。如果你想打印錯誤消息serve_forever()以前只有做到這一點:

import logging 
from pyftpdlib.log import config_logging 
config_logging(level=logging.ERROR) 
+0

事情是,我將它作爲一個窗口中的線程與我的腳本一起啓動,意味着如果此模塊將打印任何內容,將會中斷他通常的代碼。有沒有辦法徹底禁用它? –

+0

config_logging(level = logging.NOTSET) –

+0

所以我打電話給我的函數包含ftp腳本,並在裏面寫這行?或在我的主要功能? –