Я не могу заставить скрипт запускаться с консоли на raspberry pi 3B + (в конечном счете, для запуска скрипта при загрузке), хотя он отлично работает в Thonny.Я получаю следующую ошибку: FileNotFoundError: [Errno 2] Нет такого файла или каталога: 'image1.jpg' Мои файлы сценариев и изображений находятся в одной папке, и сценарий создает первое изображение с именем image1.jpg прямо передошибка.
Цель кода - сделать снимки с помощью Picame и отправить их через запросы PUT json на онлайн-платформу.Я подумал, что, возможно, скрипт, работающий на консоли, работает быстрее, и Pi не успевает сохранить файл изображения перед его отправкой.Я попытался отложить запрос Json, но это не проблема.Ниже приведен не весь мой код, а область, в которой проблема наиболее вероятна.
Это начало цикла, в котором файлы изображений создаются и индексируются с помощью "галочки"
camera = PiCamera()
go = 1
tick = 1
starttime=time.time()
deltick = 1
camera.resolution = (640, 480)
while go == 1:
camera.capture('/home/pi/ghettoCam/image%s.jpg' % tick)
image = '/home/pi/ghettoCam/image%s.jpg' % tick
#this is the Json part where the images are sent out
url = 'destinationURL'
###### Parameters to update ##################
thingName = 'armedResponder2'
propName = 'video'
imageName = 'image%s.jpg' % tick
#below is where I get the error
with open(imageName, "rb") as image_file:
imageSend = base64.b64encode(image_file.read())
payload = {propName: imageSend}
# Extend this as needed {'prop1': data1,'prop2': data2, etc.}
###### End Parameters ############################
headers = { 'Content-Type': 'application/json', 'appKey': '1c6026f9-2310-4e36-98b5-8b4aa0e35dfc' }
response = requests.put(url + '/Things/'+ thingName+ '/Properties/*', headers=headers, json=payload, verify=False)
#tick update
tick = tick+1
* 1007.* Ожидаемые результаты: программа работает так же, как и в IDLE, каждую секунду снимает изображение и успешно отправляет его на платформу.
Фактические результаты: при запуске сценария в консоли появляется ошибка, описанная ранее.после того, как была сделана только одна фотография и отправлено уведомление на онлайн-платформу.