В этом уроке в качестве примера будет использоваться PTZ видеокамера (камера с удаленным управлением поворотом/наклоном/зумом). Начнём с самого начала из предположения, что у вас на компьютере нет ничего, только Windows 10 или Ubuntu. Если у вас более старая версия Windows, поставить Ubuntu вам все-таки придется (можно на виртуальную машину).
Это легко гуглится, вот первая же русскоязычная ссылка.
sudo apt-get install pythonДля установки библиотеки onvif следуйте инструкциям. Обратите внимание, библиотека работает для Python 2.x, если вы используете Python 3.x, используйте форк этой библиотеки.
Возможно, вам повезет и хватит двух этих команд:
sudo apt-get install python-pippip install onvifПри установке из-под Windows была замечена проблема отсутсвия путей и файлов в ожидаемых местах. Внимательно прочитайте, что пишется при установке и, если там ошибки типа “не найден путь/файл”, то помогает установка символьных ссылок (ln -s <фактический путь> <путь, где эти файлы ожидает увидеть инсталлятор).
Ищем файлы:
sudo find / -name onvif -type dsudo find / -name wsdl -type d Расставляем символьные ссылки:
sudo ln -s /usr/local/lib/python2.7/dist-packages/onvif /etc/onvifsudo ln -s /usr/local/lib/python2.7/site-packages/wsdl /etc/onvif/wsdlЕсли всё прошло успешно, то попытка подключения к устройству должна увенчаться успехом.
При установке под Ubuntu также с путями что-то не так и это также лечится установкой символьной ссылки или размещением файлов там, где их ожидают:
onvif.exceptions.ONVIFError: Unknown error: No such file: /home/ubuntu/.local/lib/python2.7/site-packages/wsdl/devicemgmt.wsdlsudo ln -s ~/.local/wsdl ~/.local/lib/python2.7/site-packages/wsdlНа этом приготовления можно считать законченными.
Важно: Если вы работаете с удаленным сервером, важно, чтобы устройства ONVIF были в одной сети с ним. Сеть можеть быть как локальной, так и виртуальной, (можно установить VPN-соединение).