Я хочу заставить свой компьютер Windows запустить скрипт Python, когда он обнаруживает, что был включен флеш-накопитель, который имеет конкретное имя (например, "Мой диск").
Как я могу достигнуть этого?
Я должен использовать некоторый инструмент в Windows или являюсь там способом записать другой сценарий Python для обнаружения присутствия флеш-накопителя, как только это включается? (Я предпочел бы его, если бы сценарий был на компьютере.)
(Я - новичок программирования..)
Хотя можно использовать метод, похожий на предложенный 'inpectorG4dget', но это будет очень неэффективно.
Для этого необходимо использовать Win API. Эта страница может быть Вам полезна: Link
И чтобы использовать Win API в питоне, проверьте эту ссылку: Ссылка
Ну, если вы находитесь в дистрибутиве Linux, то этот вопрос по SO будет иметь ответ.
Я могу придумать круглое (не элегантное) решение для вашей проблемы, но, по крайней мере, это будет работать.
Каждый раз, когда вы вставляете свой флэш-накопитель в USB-порт, операционная система Windows назначает ему букву диска. Для целей этого обсуждения назовем эту букву "F".
Этот код выглядит так, будто мы можем cd в f:\
. Если можно cd в f:\
, то можно сделать вывод, что буква 'F' выделена в виде буквы диска, и в предположении, что Ваш флеш-накопитель всегда получает букву 'F', можно сделать вывод, что Ваш флеш-накопитель был подключен.
import os
def isPluggedIn(driveLetter):
if os.system("cd " +driveLetter +":") == 0: return True
else: return False