我在python 2.7上使用pyftpdlib作爲我從代碼中調用的函數。該功能是basic example the pyftpdlib creators has to offer。pyftpdlib模塊有內置打印,有沒有辦法禁用這個?
問題是,該模塊具有我想禁用的內置打印功能,或者至少使用戶無法看到它們,而無需修改模塊本身。
幫助?任何人?
在此先感謝,美里:)
我在python 2.7上使用pyftpdlib作爲我從代碼中調用的函數。該功能是basic example the pyftpdlib creators has to offer。pyftpdlib模塊有內置打印,有沒有辦法禁用這個?
問題是,該模塊具有我想禁用的內置打印功能,或者至少使用戶無法看到它們,而無需修改模塊本身。
幫助?任何人?
在此先感謝,美里:)
pyftpdlib沒有print()
秒。您在屏幕上看到的內容通過logging
模塊打印。如果你想打印錯誤消息serve_forever()
以前只有做到這一點:
import logging
from pyftpdlib.log import config_logging
config_logging(level=logging.ERROR)
事情是,我將它作爲一個窗口中的線程與我的腳本一起啓動,意味着如果此模塊將打印任何內容,將會中斷他通常的代碼。有沒有辦法徹底禁用它? –
config_logging(level = logging.NOTSET) –
所以我打電話給我的函數包含ftp腳本,並在裏面寫這行?或在我的主要功能? –
如果模塊採用'的print()'或'sys.stdout'那麼你可以自己的類分配給'sys.stdout'捕捉所有文本。但我不確定模塊是否會使用它。 – furas
我該怎麼做,在哪裏做? –
[將stdout重定向到Python中的文件](http://stackoverflow.com/questions/4675728/redirect-stdout-to-a-file-in-python) - 您可以將'stdout'重定向到文件或Linux上'/ dev/null' – furas