Использование Python 2.7 на Raspberry Pi B +, я хочу, чтобы вызвать команду «raspistill -o image.jpg» из Python и найти с помощью этого рекомендуется:Python subprocess.call() не записывает содержимое в файл
from subprocress import call
call(["raspistill","-o image.jpg"])
Однако, это не работает, так как image.jpg не создается, хотя за пределами Python,
raspistill -o
действительно создает файл. Следующая попытка сначала создать файл изображения и записать его.
f = open("image.jpg","w")
call(["raspistill","-o image.jpg"], stdout = f)
Теперь файл изображения создается, но ничего не написано на нем: его размер остается 0. Так как я могу получить эту работу?
спасибо.
Благодарим за отзыв. Однако без f = open ("image.jpg", "w") с этим изменением файл по-прежнему не создается. Любые предложения приветствуются. – user2294285
@ user2294285: см. Ответ @ abarnert.Имея оба средства, у вас есть две программы (python и raspistill), пытающиеся писать в один и тот же файл одновременно - в лучшем случае беспорядок. По крайней мере, вы должны называть 'f.close()' * до * вы запускаете raspistill. – cdarke
@ user2294285 Я предлагаю вам попробовать 'subprocess.check_output ([" raspl ... "])'. Если файл не создан, возможно, есть ошибка. Вышеприведенная команда должна распечатать ошибку. Пожалуйста, разместите здесь ошибку, и я постараюсь продолжить вас. –