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:有需要源码的私信我

相关推荐
Larcher6 分钟前
Python List、切片与大模型:从入门到实践的优雅之旅
python·ai编程
用户63371973590112 分钟前
_winapi.CreateProcess....FileNotFoundError: [WinError 2] 系统找不到指定的文件
python
清水白石00813 分钟前
Python 数据建模指南:dataclass、TypedDict 与 Pydantic 的选型博弈
前端·javascript·python
ZPC821013 分钟前
双目相机 + 点云 + YOLO 是机械臂抓取最标准、最精准的方案!
数码相机·yolo
小郑加油14 分钟前
python_综合训练
开发语言·python
葬送的代码人生14 分钟前
Notebook环境下的List、Slice与LLM大冒险
python·jupyter·api
多彩电脑15 分钟前
Kivy的事件向方法传递的event是什么?
开发语言·python
hnxaoli17 分钟前
统信小程序(十四)支持拖拽的旋图程序
python·小程序
2601_9601020417 分钟前
什么是蜘蛛池?百度快速录入
爬虫·搜索引擎·百度·蜘蛛池
惊梢鸟22 分钟前
一天学会三个实用Python技巧:切片、strip()和LLM接口调用
python