Подтвердить что ты не робот

Программно проверить, является ли буква диска общим/сетевым диском

Я искал какое-то время, но не нашел ничего, что помогло мне. Есть ли способ проверить, означает ли буква диска общий диск/сетевой диск или локальный диск в python? Я думаю, есть функция windows api, которая дает мне эту информацию, но я не могу ее найти. Возможно, есть даже метод, уже интегрированный в python?

То, что я ищу, - это что-то с этим или подобным поведением:

someMagicMethod("C:\\")  #outputs True 'is a local drive'
someMagicMethod("Z:\\")  #outputs False 'is a shared drive'

Это также помогло бы мне:

someMagicMethod2()  #outputs list of shared drive letters

Большое спасибо!

4b9b3361

Ответ 1

Функция GetDriveType в модуле win32file может вам помочь - это оболочка для функции GetDriveType WINPI.

import win32file
isNetworkDrive = win32file.GetDriveType("Z:\\") == win32file.DRIVE_REMOTE

Вы можете перечислить все с помощью функции GetLogicalDriveStrings() в модуле win32api, а затем использовать цикл для выбора только сетевых дисков.