海康设备搜索器搜索协议解析

参考:海康设备搜索器搜索协议解析_凹凸慢的水博客的技术博客_51CTO博客

vEthernet 可能会影响搜索,可以禁用。

 代码:

import socket
import re
import uuiddef getUUID():return (str(uuid.uuid4())).upper()ANY = "0.0.0.0"
DES_IP = "239.255.255.250"
PORT = 37020
# xml_str = b'<?xml version="1.0" encoding="utf-8"?><Probe><Uuid>B2D5D4D2-808C-40F6-87CD-694C05C2B274</Uuid><Types>inquiry</Types></Probe> '
xml_str = f'<?xml version="1.0" encoding="utf-8"?><Probe><Uuid>{getUUID()}</Uuid><Types>inquiry</Types></Probe>'
xml_str=bytes(xml_str,encoding='utf-8')
# 创建UDP socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
# 允许端口复用
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
# 绑定监听多播数据包的端口
s.bind((ANY, PORT))
# 声明该socket为多播类型
s.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 255)
# 加入多播组,组地址由第三个参数制定
s.setsockopt(socket.IPPROTO_IP,socket.IP_ADD_MEMBERSHIP,socket.inet_aton(DES_IP) + socket.inet_aton(ANY)
)
s.setblocking(False)
s.sendto(xml_str, (DES_IP, PORT))
while True:try:data, address = s.recvfrom(2048)except Exception as e:# print(e)passelse:print(address)print(data)try:IPv4 = re.search(re.compile(r"<IPv4Address>(.*?)</IPv4Address>", re.S), str(data))[1]MAC = re.search(re.compile(r"<MAC>(.*?)</MAC>", re.S), str(data))[1]DeviceDescription = re.search(re.compile(r"<DeviceDescription>(.*?)</DeviceDescription>", re.S), str(data))[1]except TypeError:passelse:# print(data)print("IPv4: {}".format(IPv4))print("MAC: {}".format(MAC))print("DeviceDescription:{}".format(DeviceDescription))'''
b'<?xml version="1.0" encoding="UTF-8"?>
\r\n<ProbeMatch>
<Uuid>BC06ADDD-2934-4B51-8246-3604E13B0A83</Uuid>\r\n
<Types>inquiry</Types>\r\n
<DeviceType>147256</DeviceType>\r\n
<DeviceDescription>DS-2CD3T86FWDA4-LS</DeviceDescription>\r\n
<DeviceSN>DS-2CD3T86FWDA4-LS20220517AACHJ90521185</DeviceSN>\r\n
<CommandPort>8000</CommandPort>\r\n
<HttpPort>80</HttpPort>\r\n
<MAC>80-7c-62-b3-53-85</MAC>\r\n
<IPv4Address>192.168.0.64</IPv4Address>\r\n
<IPv4SubnetMask>255.255.255.0</IPv4SubnetMask>\r\n
<IPv4Gateway>192.168.0.1</IPv4Gateway>\r\n
<IPv6Address>::</IPv6Address>\r\n
<IPv6Gateway>::</IPv6Gateway>\r\n
<IPv6MaskLen>64</IPv6MaskLen>\r\n
<DHCP>false</DHCP>\r\
<AnalogChannelNum>0</AnalogChannelNum>\r\n
<DigitalChannelNum>1</DigitalChannelNum>\r\n
<SoftwareVersion>V5.7.1build 220309</SoftwareVersion>\r\n
<DSPVersion>V7.3 build 211201</DSPVersion>\r\n
<BootTime>2022-07-09 09:07:09</BootTime>\r\n
<Encrypt>true</Encrypt>\r\n
<ResetAbility>false</ResetAbility>\r\n
<DiskNumber>1</DiskNumber>\r\n
<Activated>true</Activated>\r\n
<PasswordResetAbility>true</PasswordResetAbility>\r\n
<PasswordResetModeSecond>true</PasswordResetModeSecond>\r\n
<SupportSecurityQuestion>true</SupportSecurityQuestion>\r\n
<SupportHCPlatform>true</SupportHCPlatform>\r\n
<HCPlatformEnable>true</HCPlatformEnable>\r\n
<IsModifyVerificationCode>true</IsModifyVerificationCode>\r\n
<Salt>f23c32b6630844732d6af341e3c32e0a8d11ec9e1d721a845fdc55397818374c</Salt>\r\n
<DeviceLock>flase</DeviceLock>\r\n
<SDKOverTLSPort>8443</SDKOverTLSPort>\r\n
<SDKServerStatus>true</SDKServerStatus>\r\n
<SDKOverTLSServerStatus>true</SDKOverTLSServerStatus>\r\n
<SupportMailBox>true</SupportMailBox>\r\n
<supportEzvizUnbind>true</supportEzvizUnbind>\r\n
<codeEncrypt>true</codeEncrypt>\r\n
</ProbeMatch>\r\n'
'''

相关链接:

PyQt5 实现类似海康的设备搜索工具_文若书生的博客-CSDN博客简述 使用IP地址组播技术,实现海康的设备搜索功能,只要设备接入局域网就能够被搜索到。效果图.功能代码:1.scan_device_ui.py 布局文件# -*- coding: utf-8 -*-# Form implementation generated from reading ui file 'scan_device.ui'## Created by: PyQt5 UI code generator 5.15.2## WARNING: Any...https://blog.csdn.net/ZHOUYONGXYZ/article/details/120223188?python socket发送组播数据_python3通过udp实现组播数据的发送和接收操作_方2郭的博客-CSDN博客本文主要通过对海康摄像头进行抓包,模拟发送了udp包,并抓取摄像头返回的数据包,解析并提取相关信息。通过抓包发现,海康摄像头发送、接收数据使用udp协议,后来比较发现,使用python模拟起来比较简单。由于摄像头内置了udp协议的server端程序,本文主要使用python模拟客户端发送udp数据包。客户端代码import socketimport reANY = "0.0.0.0"DES_IP ...https://blog.csdn.net/weixin_35763513/article/details/112894077

【Python 代码】类似SADPTool工具,搜索海康设备相关推荐

  1. Python Gstreamer播放rtsp视频流(海康IPCAM)

    Python Gstreamer播放rtsp视频流(海康IPCAM) 播放思路: 图解: 1.首先通过IPCAM的ip与用户等信息获得rtsp码:   海康新版IPCAM的rtsp地址规则为:rtsp ...

  2. python代码安全扫描工具

    python代码安全扫描工具:Coverity. Fortify.SecMissile(漏扫,对源代码提供基于语义的搜索和分析能力,实现已知安全漏洞的快速扫描) 转载于:https://www.cnb ...

  3. 海康设备注册一直失败的问题

    今天用JAVA对接海康设备,但是注册一直失败,ip.端口.用户名.密码都是正确的,一直百思不得其解,后来一番查询与排错,终于找到了原因,是因为没有初始化设备 初始化设备的代码(红框里的部分): if ...

  4. 海康设备通过SDK获取和设置设备网络参数

    目录 1.获取网络相关参数 2.设置网络相关参数 1.获取网络相关参数 //获取设备的网络参数private void getNetCfg(int iUserID) {HCNetSDK.NET_DVR ...

  5. 海康设备接入EasyCVR,出现告警信息缺失且不同步该如何解决?

    EasyCVR可支持设备通过国标GB28181.RTMP.RTSP/Onvif.海康SDK.大华SDK.Ehome等协议接入,对外可分发RTSP.RTMP.FLV.HLS.WebRTC等格式的视频流. ...

  6. LiveNVR监控流媒体Onvif/RTSP功能支持海康摄像头通过海康SDK接入支持回看倍速播放海康设备存储的设备录像

    LiveNVR功能支持海康摄像头通过海康SDK接入支持回看倍速播放海康设备存储的设备录像 1.流媒体服务说明 2.支持海康SDK接入 3.查看设备录像 3.1.时间轴模式 3.2.列表模式 4.RTS ...

  7. 国标流媒体服务器GB28181协议和海康设备的交互过程记录

    国标GB28181协议从2016年更新后,变得比之前更火了,到今年已经4年了,国标视频流媒体服务器基础的功能都已经发展起来,而更深层次的功能还需要进一步的研发. 在日常运用中,海康的摄像头运用较为广泛 ...

  8. Ehome/ISUP协议海康设备的主动注册管理

    第一步:在平台软件所在网络需映射端口 7660(UDP) 54000-65535(TCP+UDP) 第二步:IE登录海康设备,进入海康设备网络--高级设置--平台接入 第三步:接入类型选择EHome或 ...

  9. 海康设备对接sdk错误码汇总 v6.0

    海康设备对接sdk错误码汇总 v6.0

  10. 使用RTSP协议读海康设备的视频记录

    前言 作为一名搞CV的程序员,我们的输入通常就是视频流.我相信很多人都用的OpenCV提供的VideoCapture函数.就我现在的经验来说,该函数支持以下3种输入: # 方式1:填入索引,表示读取设 ...

最新文章

  1. 隐式转换和显式转换及强制转换的区别
  2. JVM对象分配回收算法
  3. iphone:UISplitView
  4. (转) 分布式文件存储FastDFS(七)FastDFS配置文件详解
  5. NIO : selector、channel、buffer的实例
  6. LiveVideoStackCon 2022 上海站 专题抢先看(3)
  7. AcWing 320. 能量项链
  8. 四则运算题目生成程序(基于控制台)
  9. 在一起计时器_古典计时器简介之一 qqtimer
  10. centos mysql自动补全_MyCLI :一个支持自动补全和语法高亮的 MySQL/MariaDB 客户端
  11. java中构造代码块、方法调用顺序问题
  12. 宝可梦世界无限极可以玩服务器吗,口袋妖怪世界无极限运行库
  13. vue将每个路由打包成html,Ant Design Vue pro 动态路由的实现和打包
  14. 系统报 “client没有所需的特权” 的解决方法
  15. xamarin UWP ActivityIndicator
  16. 大数据时代下的原型该怎么做?免费模版送给你
  17. 单片机破解的常用方法及应对策略
  18. 深入java虚拟机(圣思园)
  19. Excel数据分析从入门到精通(三)函数进阶-52个Excel函数之清洗类函数
  20. 正则表达式常用语法解析

热门文章

  1. html5小说阅读器源码,文本源码阅读器(NexusTextView)
  2. 最好用的UltraISO 9.5.3.2901中文完美注册破解版
  3. 说说BXP的实际中的应用(转)
  4. 大家口中所说的A站、B站、C站、D站、E站、F站、G站、H站、I站、J站、K站、L站、M站、N站、O站、P站、Q站、R站、S站、T站、U站、V站、W站、X站、Y站、Z站都是什么网站?
  5. 【IIOT】欧姆龙PLC数采之NX/NJ系列
  6. 小学生c语言编程入门教程_学生编程语言
  7. Android 开发神器系列(工具篇)之 Android 屏幕共享工具
  8. iconfont-阿里巴巴矢量图标库使用教程
  9. iconfont 阿里巴巴矢量图标库 引入图标不显示
  10. 蓝牙耳机测试软件apk_蓝牙耳机弹窗app下载-蓝牙耳机弹窗软件v3.1.0安卓版_5577安卓网...