python爬虫登录到海康相机管理页面

简述

1.最近接到个任务是在管理页面更改相机的某个参数,下载官方的sdk貌似没有提供这个接口,所以只能自己写爬虫登录发请求了。

1.主要步骤

1.1 发送get请求获取到salt,sessionID,challenge等信息

http://admin:123456@192.168.1.80/ISAPI/Security/sessionLogin/capabilities?username=admin

1.2 再次发送这个请求,这次要带上一个随机数random。random生成规则如下:

timestamp = str(int(time.time()))

md5_hash = hashlib.md5(timestamp.encode()).hexdigest()

md5_substring = md5_hash[:8].replace("#", "")

result = str(int(md5_substring, 16))[:8]

url += "&random=" + result

print(url)

1.3 最后拿到第二次获得到salt,sessionId,challenge信息和加密的登录密码登录

http://192.168.1.80/ISAPI/Security/sessionLogin?timeStamp=

1.4 问题注意

复制代码
有个特别恶心的问题是requests的post库会转义尖括号。

使用来去除

unescaped_string = urllib.parse.unquote(validation)

最后成功的登录截图:

ps:有需要源码的私信我

相关推荐
JHC0000001 天前
基于Ollama,Milvus构建的建议知识检索系统
人工智能·python·milvus
mOok ONSC1 天前
SpringBoot项目中读取resource目录下的文件(六种方法)
spring boot·python·pycharm
GIS兵墩墩1 天前
postgis--PostgreSQL16及其plpython3u扩展
python·postgis
new Object ~1 天前
LangChain的短期记忆存储实现
python·langchain
魔都吴所谓1 天前
【Python】从零构建:IP地理位置查询实战指南
开发语言·python·tcp/ip
测试19981 天前
使用Python自动化生成接口测试用例
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
智算菩萨1 天前
【Pygame】第10章 游戏状态管理与场景切换机制
python·游戏·pygame
songcream11 天前
TensorFlow的一些基本概念
人工智能·python·tensorflow
AI逐月1 天前
解决 ComfyUI 插件安装后 Nanobind 报错问题:soxr 版本冲突原理解读
开发语言·python