Фильтровать список каталогов в pyftpdlid - PullRequest
1 голос
/ 01 марта 2020

В pyftpdlid, как отфильтровать список каталогов, возвращаемых на основе указанных c условий, я хочу скрыть некоторые каталоги и файлы. Я думаю, что это может быть связано с методом def ftp_LIST (self, path):. Я пробовал несколько вариантов этого, но ни один из них, кажется, не работает. Есть идеи?

1 Ответ

0 голосов
/ 02 марта 2020

Я думаю, вам нужно:

  • Извлечь класс из AbstractedFS.
  • Переопределить его listdir Метод .
  • Назначьте реализацию AbstractedFS на FTPHandler.abstracted_fs.
class FilteredFS(AbstractedFS):
    def listdir(self, path):
        files = os.listdir(path)
        # filter as you need
        return files

handler = FTPHandler
# ...
handler.abstracted_fs = FilteredFS
server = FTPServer(('', 21), handler)
server.serve_forever()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...