Используя Python, как я могу получить доступ к общей папке в сети Windows?

У меня есть файл, который я хотел бы скопировать из общей папки, которая находится в общей папке в другой системе, но в той же сети. Как я могу получить доступ к папке / файлу? Обычный метод open() не работает?

4 ответа

Решение

Используйте косую черту для указания пути UNC:

open('//HOST/share/path/to/file')

(если ваш клиентский код Python также работает под Windows)

Как ты это попробовал? Может быть, вы работаете с \ и пропустить правильное побег.

Вместо

open('\\HOST\share\path\to\file')

использовать решение Johnsyweb с /s, или попробуйте один из

open(r'\\HOST\share\path\to\file')

или же

open('\\\\HOST\\share\\path\\to\\file')

,

У меня была та же проблема, что и у OP, но ни один из текущих ответов не решил мою проблему, поэтому добавлю немного другой ответ, который работал для меня:

Запустив Python 3.6.5 на Windows-машине, я использовал формат

г "\ имя_накопителя \ то \ файл \ путь \txt.md"

поэтому сочетание двойной обратной косой черты от чтения UNC-ссылки @Johnsyweb и добавления r вперед, как было рекомендовано, решило мою проблему, аналогичную проблеме OP.

Мой удаленный сервер находится на Linux-машине, а клиент на Windows. Для меня:

  1. glob.glob('//HOST/share/path/to/file')работает с косой чертой
  2. open(r'\\HOST\share\path\to\file')иopen('\\\\HOST\\share\\path\\to\\file')работал с обратной косой чертой
  3. Дляpd.read_csv(), косая черта вперед или назад, не имеет значения.
Другие вопросы по тегам