Форум программистов, компьютерный форум, киберфорум
Python: Web
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 23.10.2015
Сообщений: 6

В сервисе видео-наблюдения на малине с передачей видео-потока на веб страничку добавить картинку

12.08.2018, 18:53. Показов 2238. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго дня! Может не совсем по теме, но у меня похоже такая же проблема.....
Строю сервис видео-наблюдения на малине с передачей видео-потока на веб страничку. Примером для себя взял статью с сайта https://picamera.readthedocs.i... -streaming. Все работает, но захотелось немного приукрасить страничку, добавить картиночку и тп, но.....закинул картинку в папку /var/www/html/, но код ее не видит((
.......
from threading import Condition
from http import server

PAGE="""\
<html>
<head>
<title>picamera MJPEG streaming demo</title>
</head>
<body>
<h1>PiCamera MJPEG Streaming Demo</h1>
<img src="stream.mjpg" width="640" height="480" />
<img src="myphoto.jpg" width="640" height="480" />
</body>
</html>
"""
class StreamingOutput(object):
def __init__(self):
......

выдает ошибку:
Error response
Error code: 404
Message: Not Found.
Error code explanation: 404 - Nothing matches the given URI.

пожалуйста помогите люди добрые
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.08.2018, 18:53
Ответы с готовыми решениями:

Обработка видео с камеры видео наблюдения (для экспертов)
Обработка видео с камеры видео наблюдения (для экспертов) Имеются несколько каналов видео с камер видео наблюдения и за полследние время...

Трансляция видео потока с веб камеры и управление
Есть необходимость получения с веб камеры изображения и трансляция его на другой ПК, другой же ПК в свою очередь может посылать управляющие...

Веб вещание видео потока одновременнно на несколько сайтов ретрансляторов
Нужно ретранслировать потоковое вещание канала на несколько серверов веб вещания . В данный момент на сервере вещания стоит Adobe Flash...

17
Эксперт С++
1624 / 954 / 782
Регистрация: 06.02.2016
Сообщений: 2,452
Записей в блоге: 31
16.08.2018, 11:49
timur16, Если полный путь прописать?
HTML5
1
<img src="/var/www/html/myphoto.jpg" width="640" height="480" />
И установлены ли права доступа на файл картинки?
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
16.08.2018, 15:20
Peoples, не, глупо.

ТС, в общем смотри, у тебя нет нормального веб-сервера. Самый простой вариант, дописать роутинг для картинки:

Python
1
2
3
4
5
6
7
elif self.path == '/myphoto.jpg':
            self.send_response(200)
            #self.send_header('Content-Type', 'text/html')
            #self.send_header('Content-Length', len(content))
            self.end_headers()
            with open('/var/www/html/myphoto.jpg') as f: 
                self.wfile.write(f.read())
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
16.08.2018, 15:39
Цитата Сообщение от Peoples Посмотреть сообщение
Если полный путь прописать?
HTML5
1
<img src="/var/www/html/myphoto.jpg" width="640" height="480" /
читайте доку к веб-серверам, в особенности про DocumentRoot. там гладишь и понимание придет того, как и откуда пишутся абсолютные пути в ссылках...
0
16.08.2018, 15:42

Не по теме:

Dmitry, Да, я понял уже что у него картинка в каталоге серверном. Сначала подумал, вдруг ТС просто путь по умолчанию оставил, для python проги

0
16.08.2018, 15:47

Не по теме:

Peoples, в любом случае домашняя директория сайта точно не будет равна корню /

0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
16.08.2018, 15:47
Peoples, вы сами себя "закапываете". по ссылкам с веб-страницы (в том числе и за картинками) ходит БРАУЗЕР клиента. и он это делает именно как браузер (либо относительно текущей страницы, либо относительно DocumentRoot сервера)! на локальную файловую систему компьютера, на котором установлен апач (или что там еще) - ему плевать с высокой колокольни...
0
in code we trust
 Аватар для __py__
133 / 162 / 12
Регистрация: 29.02.2016
Сообщений: 885
17.08.2018, 01:07
Google - это легальный компьютерный троян, который давно имеет доступ к твоей системе. Ты просто не знаешь ещё об этом.
0
0 / 0 / 0
Регистрация: 23.10.2015
Сообщений: 6
17.08.2018, 10:05  [ТС]
Цитата Сообщение от Рыжий Лис Посмотреть сообщение

ТС, в общем смотри, у тебя нет нормального веб-сервера. Самый простой вариант, дописать роутинг для картинки:

Python
1
2
3
4
5
6
7
elif self.path == '/myphoto.jpg':
            self.send_response(200)
            #self.send_header('Content-Type', 'text/html')
            #self.send_header('Content-Length', len(content))
            self.end_headers()
            with open('/var/www/html/myphoto.jpg') as f: 
                self.wfile.write(f.read())
Друзья, спасибо что откликнулись)) Сделал как советует Рыжий Лис... Код мою картинку увидел, но отправить в браузер похоже не может(( Ответ найти оперативно не получается. Может ошибки из консоли вам подскажут куда меня отправить))))

[17/Aug/2018 09:53:13] "GET /index.html HTTP/1.1" 200 -
[17/Aug/2018 09:53:13] "GET /stream.mjpg HTTP/1.1" 200 -
[17/Aug/2018 09:53:13] "GET /myphoto.jpg HTTP/1.1" 200 -
----------------------------------------
Exception happened during processing of request from ('10.8.0.14', 58488)
Traceback (most recent call last):
File "/usr/lib/python3.4/socketserver.py", line 613, in process_request_thread
self.finish_request(request, client_address)
File "/usr/lib/python3.4/socketserver.py", line 344, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/lib/python3.4/socketserver.py", line 669, in __init__
self.handle()
File "/usr/lib/python3.4/http/server.py", line 398, in handle
self.handle_one_request()
File "/usr/lib/python3.4/http/server.py", line 386, in handle_one_request
method()
File "/home/pi/mjpeg_streaming.py", line 59, in do_GET
self.wfile.write(f.read())
File "/usr/lib/python3.4/codecs.py", line 313, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
17.08.2018, 11:35
Цитата Сообщение от timur16 Посмотреть сообщение
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
переведите фразу и разбирайтесь с ее причиной
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
17.08.2018, 12:20
Может так?
Python
1
self.wfile.write(f.read().encode('utf-8'))
0
0 / 0 / 0
Регистрация: 23.10.2015
Сообщений: 6
17.08.2018, 12:41  [ТС]
все равно ошибка: (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte

Гуглю "raspberry DocumentRoot сервера nginx".....
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
17.08.2018, 13:22
Кстати, да. Можно поставить полноценный nginx, а путь /stream.mjpg как обратный прокси перенаправлять на питон.

Code
1
2
3
4
5
6
7
8
9
10
11
12
server {
  listen 80;
  server_name example.org;
 
  location / {
    #…
  }
 
  location /stream.mjpg {
    proxy_pass http://localhost:8000;
  }
}
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
17.08.2018, 13:22
эта ошибка:
Цитата Сообщение от timur16 Посмотреть сообщение
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
..не имеет никакого отношения к DocumentRoot. у вас что-то не то с содержимым, которое вы пытаетесь выталкивать в браузер. видимо, с кодировкой файла или его форматом (применительно к php при подобных ошибках обычно отправляют гуглить про "сохранение файлов в utf без BOM").
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
17.08.2018, 13:41
Цитата Сообщение от Dmitry Посмотреть сообщение
с кодировкой файла
У файла нет кодировки Это бинарник (картинка).
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
17.08.2018, 13:51
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
Это бинарник
что именно там - мне не известно, равно как и сам Python. но вот гугл при поиске по тексту
Цитата Сообщение от timur16 Посмотреть сообщение
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
...выдает превеликое множество ответов, и думаю, что какие-то из них вполне в состоянии решить проблему. и уж точно ни в одном из них не увидел ничего про DocumentRoot...
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
17.08.2018, 17:59
Лучший ответ Сообщение было отмечено timur16 как решение

Решение

Цитата Сообщение от Рыжий Лис Посмотреть сообщение
Это бинарник
И зачем тогда открывать его как текст? Если вы не указали кодировку, это не значит, что python ее не применит и прочитает файл как двоичный.
open(file,"rb")
2
0 / 0 / 0
Регистрация: 23.10.2015
Сообщений: 6
18.08.2018, 02:40  [ТС]
quote="Garry Galler;12846019"]И зачем тогда открывать его как текст? Если вы не указали кодировку, это не значит, что python ее не применит и прочитает файл как двоичный.
open(file,"rb")[/quote]спасибо) сейчас поэкспериментирую[

Добавлено через 15 секунд
quote="Garry Galler;12846019"]И зачем тогда открывать его как текст? Если вы не указали кодировку, это не значит, что python ее не применит и прочитает файл как двоичный.
open(file,"rb")[/quote]спасибо) сейчас поэкспериментирую[

Добавлено через 8 часов 7 минут
Цитата Сообщение от Garry Galler Посмотреть сообщение
И зачем тогда открывать его как текст? Если вы не указали кодировку, это не значит, что python ее не применит и прочитает файл как двоичный.
open(file,"rb")
Всё получилось! Спасибо)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.08.2018, 02:40
Помогаю со студенческими работами здесь

Delphi: Возможно ли добавить текст из аудио видео потока ?
Привет всем: возможно ли добавить текст из аудио видео потока в memo1 ? пример есть аудиозапись анализирует слово hello и добовляет слово...

Наложить видео с альфа каналом поверх картинки с камеры, чтобы видео не перекрывало картинку
всем привет! стоит такая задача: есть видео в контейнере .mov, которое содержит альфаканал нужно вывести картинку с камеры, а поверх...

Вставить картинку в видео .avi, не ухудшая качество видео?
Подскажите программу, с кторой можно вставить картинку в видео (на определенное время) и при этом чтобы качество видео и картинки не упало....

Видео веб-камера не снимает видео
Доброго времени суток, случилась такая проблема - стоит видео веб камера, Описание драйвера - Video WebCam Дата драйвера 21.06.2006...

Не загружаются комментарии,картинки на видео,не могу добавить видео на YouTube
Привет всем,столкнулся с такой проблемой: на ютубе не загружаются комментарии,не загружаются картинки на видео,не могу добавить видео на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Контроль корректности заполнения дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru