Watchdog: Passar uma string de um usuário expandido (Pathlib) para observer.schedule dá a instrução ilegal 4

Criado em 10 jul. 2020  ·  4Comentários  ·  Fonte: gorakhargosh/watchdog

De acordo com o título, o código comentado funciona, enquanto o uso do Pathlib me dá uma instrução ilegal 4. Imprimir os caminhos para o terminal mostra que eles estão configurados corretamente e comentar a linha observer.schedule executa o programa sem erros.

class ObserverLoop:
    def __init__(self):
        self.folder = Path("~/Desktop")
        print(self.folder.expanduser())
        # self.working_path = os.path.abspath(os.path.expanduser("~/" + "/Desktop/"))
        self.working_path = self.folder.expanduser()
        print(self.working_path)
        self.event_handler = MonitorFolderChanges(self.working_path)

    def start_loop(self):
        tf.key = secrets.api_key
        observer = Observer()

        observer.schedule(self.event_handler, self.working_path, recursive=False)
        observer.start()

        try:
            while observer.is_alive():
                observer.join(1)
        except KeyboardInterrupt:
            observer.stop()

        observer.join()
not a bug

Todos 4 comentários

Qual versão de watchdog?

A última versão 0.10.2 eu acredito.

Você poderia tentar com o 0.10.3, o mais recente atual. Ele contém uma correção para oferecer suporte a objetos semelhantes a caminhos (consulte https://github.com/gorakhargosh/watchdog/releases/tag/v0.10.3).

Obrigado pela solução e lamentamos a demora em responder. O principal motivo do problema é que não foi oferecida a versão mais recente ao tentar brew upgrade .

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

boxed picture boxed  ·  6Comentários

hgrecco picture hgrecco  ·  6Comentários

xsank picture xsank  ·  5Comentários

alt3red picture alt3red  ·  3Comentários

yarko picture yarko  ·  3Comentários