实现大华摄像头的抓图-使用HTTP方式

news2025/1/15 6:46:05

实现抓图,网上大部分都是使用SDK二次开发的,HTTP接口实现的基本没有介绍,好像官方叫CUI接口,但是找官方要文档,基本要不到,我自己下载了一份以前的文档,可以做大部分操作,这里免费分享给大家,评论留下邮箱。在资源里面,但是只需要实现一个抓图,使用SDK的话就太麻烦了,这里分享给大家,使用python实现,转换为其他也很方便的,直接上代码,基于自己摄像头的账号密码,以及Ip,请注意修改url、username 、password 改为自己的就行拉。

import requests
import hashlib

# 请求地址和参数
url = "http://192.168.*.*/cgi-bin/snapshot.cgi?channel=1"
username = "***"
password = "***"

# 发送初始请求获取摘要身份验证参数
response = requests.get(url)
nonce = response.headers['WWW-Authenticate'].split('nonce="')[1].split('"')[0]
realm = response.headers['WWW-Authenticate'].split('realm="')[1].split('"')[0]

# 生成摘要身份验证的响应值
ha1 = hashlib.md5((username + ":" + realm + ":" + password).encode()).hexdigest()
ha2 = hashlib.md5(("GET:" + url).encode()).hexdigest()
response = hashlib.md5((ha1 + ":" + nonce + ":00000001:randomstring:auth:" + ha2).encode()).hexdigest()

# 构造请求头
headers = {
    'Authorization': f'Digest username="{username}", realm="{realm}", nonce="{nonce}", uri="{url}", qop=auth, nc=00000001, cnonce="randomstring", response="{response}"'
}

# 发送带有摘要身份验证的请求
response = requests.get(url, headers=headers)

# 处理服务器的响应
if response.status_code == 200:
    print("请求成功")
    print("应答码:" + str(response.status_code))
    print("应答头:")
    for k, v in response.headers.items():
        print(k, v)
    print("应答体:" + response.text)
else:
    print("请求失败")
    print("错误码:" + str(response.status_code))

运行效果
在这里插入图片描述

也可以使用posman实现,直接出图
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/818f5d8599e94c939a01490fb5255f0b.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1497141.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于MPPT的太阳能光伏电池simulink性能仿真,对比扰动观察法,增量电导法,恒定电压法

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 扰动观察法 (Perturb and Observe Method) 4.2 增量电导法 (Incremental Conductance Method) 4.3 恒定电压法 (Constant Voltage Method) 5.完整工程文件 1.课题概述 在simulink中,实…

RNN实现退位减法

文章目录 前言RNNRNN架构图前向传播公式反向传播算法 用RNN实现退位减法代码变量的对应关系 总结 前言 最近深入学习了一下RNN,即循环神经网络。RNN是一类比较基础的神经网络,本文使用的是最基础、最简单的循环神经网络的形式。LSTM也是一种常见的循环神…

中大型工厂人员定位系统源码,实现人、车、物的实时位置监控

UWB高精度定位系统源码,中大型工厂人员定位系统,实现人、车、物的实时位置监控 UWB高精度定位系统源码,智慧工厂人员定位系统源码,基于VueSpring boot前后端分离架构开发的一套UWB高精度定位系统源码。有演示。 随着经济的高速发展…

Flink实时数仓同步:切片表实战详解

一、背景 在大数据领域,初始阶段业务数据通常被存储于关系型数据库,如MySQL。然而,为满足日常分析和报表等需求,大数据平台采用多种同步方式,以适应这些业务数据的不同存储需求。 一项常见需求是,业务使用…

潜水耳机哪个牌子好?认准这几个游泳耳机品牌就对了!

在科技日益发达的今天,人们对于运动设备的需求也在不断提升。作为一项独特的水上运动,潜水爱好者们对耳机的要求也越来越高。一款优秀的潜水耳机不仅能够提供卓越的防水性能和舒适度,还必须具备出色的音质。那么,在众多品牌中&…

C语言进阶—表达式求值

隐式类型转换&#xff1a; C 的整型算术运算总是至少以缺省(默认)整型类型的精度来进行的。 为了获得这个精度&#xff0c;表达式中的字符和短整型操作数在使用之前被转换为普通整型&#xff0c;这种转换称为整型提升。 #include <stdio.h>int main() {char c 1;printf(…

鸿蒙Harmony应用开发—ArkTS声明式开发(自定义手势判定)

为组件提供自定义手势判定能力。开发者可根据需要&#xff0c;在手势识别期间&#xff0c;决定是否响应手势。 说明&#xff1a; 从API Version 11开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 onGestureJudgeBegin onGestureJudgeBegi…

C#与python交互(flask发送Get/Post请求)

先运行python&#xff0c;再运行C# **ps: 注意修改端口号**python发送Get/Post请求 # -*- coding: utf-8 -*- # Time : 2024/1/25 15:52 # Author : YY # File : post_test.py # Content&#xff1a;提交数据给客户端 from flask import Flask, request, jsonify, redirect…

Vue系列-环境快速搭建

vue环境快速搭建 演示视频 快速搭建Vue开发环境pnpm和yarn 1. 基本信息 作者: GMCY系列: Vue仓库: GitHub | Gitee话题(GitHub): tools \ vue创建时间: 2024/03/02 2. 介绍 功能 批处理文件vue 环境的快速搭建nodejs, npm, pnpm, yarn 自动 下载安装npm, pnpm, yarn 自动 …

计网:HTTPS协议详解

1、HTTP 与 HTTPS 有哪些区别&#xff1f;​​​ HTTP以明文方式传输数据&#xff0c;不提供任何加密。如果攻击者截取了传输报文&#xff0c;就可以直接读取其中的信息。HTTPS利用SSL/TLS加密数据包&#xff0c;报文以密文方式传输。 HTTP 连接建立相对简单&#xff0c; TCP …

【办公类-22-08】周计划系列(3-3)“信息窗+主题知识(上传+打印)” (2024年调整版本)

作品展示 背景需求&#xff1a; 前文将信息窗主题知识的内容提取并优化结构 【办公类-22-07】周计划系列&#xff08;3-1&#xff09;“信息窗主题知识&#xff08;提取&#xff09;” &#xff08;2024年调整版本&#xff09;-CSDN博客文章浏览阅读803次&#xff0c;点赞7次…

新一代WLAN解决方案与WLAN的配置实现

案例背景为二层旁挂式组网&#xff0c;转发方式为直接转发&#xff0c;管理Vlan为100&#xff0c;业务Vlan为101。 基本配置&#xff1a; SW1&#xff1a; [SW1]VLAN batch 100 101 [SW1-GigabitEthernet0/0/1]port link-type trunk [SW1-GigabitEthernet0/0/1]port trunk a…

SQL 初级

SQL 初级 SQL 简介 SQL (Structured Query Language:结构化查询语言) 是用于管理关系数据库管理系统&#xff08;RDBMS&#xff09;。 SQL 的范围包括数据插入、查询、更新和删除&#xff0c;数据库模式创建和修改&#xff0c;以及数据访问控制。 SQL 是什么&#xff1f; SQL…

【Linux C | 网络编程】多播的概念、多播地址、UDP实现多播的C语言例子

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…

提高生产效率!虹科MSR165快速检测机器故障,实现精准优化

如今&#xff0c;各种生产机器、机床和运输机都采用了复杂的驱动技术&#xff0c;以便在三个轴上准确生成线性运动或者高效旋转运动。所有机械运动中都会出现特征性的振动或震动模式&#xff0c;可以在该背景下利用这些模式来监测和优化整个驱动技术的机电参数。在这个过程中&a…

太阳能光伏电池的simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 光伏电池的基本结构 4.2 光伏电池的工作原理 5.完整工程文件 1.课题概述 太阳能光伏电池的simulink建模与仿真.分析不同光照温度&#xff0c;光照强度下的光伏电池的U-I特性曲线以及P-V特性曲线。 …

备战蓝桥(模板篇)

扩展欧德里几算法 质数筛 分解质因数 LCA BFS floyd Dijkstra prime 日期是否合法 Tire异或 模拟散列表 字符哈希 Tire字符串统计

官方教程 | 在 OpenBayes 平台进行组织协作

想和好 homie 共享账户余额、存储、数据集、模型、容器等资源&#xff0c;又不想共享自己的账户密码&#xff1f; 想跟团队成员分工协作、高效 Coding、加速炼丹&#xff0c;又想隔离权限、差异化管理&#xff1f; 经过为期半年的内测和完善&#xff0c;OpenBayes贝式计算的组织…

平面纯弯梁单元Matlab有限元编程 |欧拉梁单元| 简支梁|悬臂梁|弯矩图 |变形图| Matlab源码 | 视频教程

专栏导读 作者简介&#xff1a;工学博士&#xff0c;高级工程师&#xff0c;专注于工业软件算法研究本文已收录于专栏&#xff1a;《有限元编程从入门到精通》本专栏旨在提供 1.以案例的形式讲解各类有限元问题的程序实现&#xff0c;并提供所有案例完整源码&#xff1b;2.单元…

Ajax、Axios、Vue、Element与其案例

目录 一.Ajax 二.Axios 三.Vue 四.Element 五.增删改查案例 一.依赖&#xff1a;数据库&#xff0c;mybatis&#xff0c;servlet&#xff0c;json-对象转换器 二.资源&#xff1a;elementvueaxios 三.pojo 四.mapper.xml与mapper接口 五.service 六.servlet 七.html页…