Предполагая Windows 7, если вы откроете папку и наберете «shell: sendto» в адресной строке, а затем нажмите «Enter», вы попадете в контекстное меню. Вы можете добавить файл .cmd со следующим:
@echo off
cls
python C:\Your\File\uploadscript.py %1
Это должно выполнить ваш скрипт на python, передав в файл (% 1) в качестве параметра. В скрипте Python вы можете использовать:
import sys
sys.argv #sys.argv[1] is the file to upload
Это возвращает все переданные параметры, поэтому sys.argv[1]
должен получить файл, который был передан. Я проверил это, и оно работает. Причина, по которой вам нужен файл .cmd вместо перехода прямо к .py, заключается в том, что файл .py не будет отображаться в меню «Отправить».
Дополнительная информация о передаче файла находится здесь:
Принятие аргумента файла в Python (из контекстного меню «Отправить в»)
РЕДАКТИРОВАТЬ: Добавление сценария для вызова нескольких файлов. Обратите внимание, что это вызывает скрипт Python для каждого отдельного файла. Если вы хотите отправить все файлы в качестве параметра скрипту Python, вам потребуется проделать немного больше работы. Вам нужно исследовать пакетный сценарий, если вы хотите делать более сложные вещи.
@echo off
cls
:upload_loop
IF "%1"=="" GOTO completed
python C:\Your\File\uploadscript.py %1
SHIFT
GOTO upload_loop
:completed