Как я могу исправить ошибку ImportError: нет модуля с именем watchdog.observers? - PullRequest
0 голосов
/ 10 января 2020

Я хочу использовать сторожевой модуль в python на моей ма c. Я уже скачал python3 через Homebrew. ($ which python3 приводит к /usr/local/bin/python3; $ which python приводит к /usr/bin/python.) После того, как я установил homebrew, python3 и автоматически pip3 (из-за homebrew), я набрал команду $ pip3 install watchdog. Установка сторожевого таймера работала нормально, и когда я набираю $ pip3 list, сторожевой таймер показывается как установленный пакет. С другой стороны, когда я выполняю следующий скрипт, я получаю сообщение об ошибке, что watchdog.observer не был найден.

from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
# pip install watchdog for these packages to work

import os
import json
import time

class MyHandler(FileSystemEventHandler):
    def on_modified(self, event):
        for filename in os.listdir(folder_to_track):
            src = folder_to_track + "/" + filename
            new_destination = folder_destination + "/" + filename
            os.rename(src, new_destination)

folder_to_track = "/Users/eve/Desktop/folder1"
folder_destinatiom = "/Users/eve/Desktop/folder2"
event_handler = MyHandler()
observer = Observer()
observer.schedule(event_handler, folder_to_track, recursive=True)

try:
    while True:
        time.sleep(10)
except KeyboardInterrupt:
    observer.stop()
observer.join()

Ошибка:

Traceback (most recent call last):
  File "/Users/eve/Desktop/auto_ideas.py", line 1, in <module>
    from watchdog.observers import Observer
ImportError: No module named watchdog.observers

В моем программировании В среде VS Code я могу выполнить сценарий либо с помощью python 2.6.9. 64Bit, saved at /usr/bin/python2.6, либо с помощью python 2.7.10 64Bit, saved at /usr/bin/python, либо с помощью python 3.7.6 64Bit, saved at /usr/local/bin/python3, либо, наконец, с помощью python 3.7.6 64Bit, saved at /usr/local/opt/python/bin/python3.7. Ни один из этих вариантов не работает для меня - я получаю ту же ошибку, каждый раз, когда я пытаюсь. Кто-нибудь знает, как я могу заставить сторожевых псов работать в таких условиях? Заранее спасибо

1 Ответ

0 голосов
/ 20 января 2020

Та же проблема! Я не знаю почему, но работает мой скрипт с python .exe путем!

C:\Python37\python.exe c:\rw_projects\mtl_error_notifier\mtl_error_notifier.py
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...