当前位置: 首页 > article >正文

保持上网认证

上网需要账号认证而且在凌晨系统就会自动将账号踢下线。一家叫Sangfor做的客户端不安它就上不了网。需要远程查看设备状态掉线了就连不进来了。找人去申请长时间在线结果是1天1掉线之前还是两天1掉线。基础的东西要告诉ai然后让它用python编个程序检查。登录网址填个错误的密码点提交用F12查看得到地址。RC4 加密分析网页里的js代码找出来让ai改。运行效果源代码importasyncioimporttimeimportaiohttpimportjsonfromcoloramaimportFore,Back,Style,initfromdatetimeimportdatetime init(autoresetTrue)# 配置区域 # 请在此处修改实际的登录地址、用户名和密码LOGIN_URLhttp://192.0.1.1/ac_portal/login.phpUSERNAMEfuyaozhishang9wanliPASSWORD*******# 时间配置 (单位秒)CHECK_INTERVAL_NORMAL300# 正常检查间隔300秒CHECK_INTERVAL_RETRY100# 重试间隔100秒NETWORK_CHECK_URLhttps://www.baidu.com# defdo_encrypt_rc4(src,passwd): RC4 加密函数 (同步函数执行非常快不影响异步性能) src_strstr(src).strip()passwd_strstr(passwd)key[0]*256sboxlist(range(256))plenlen(passwd_str)sizelen(src_str)foriinrange(256):key[i]ord(passwd_str[i%plen])j0foriinrange(256):j(jsbox[i]key[i])%256sbox[i],sbox[j]sbox[j],sbox[i]output[]a0b0foriinrange(size):a(a1)%256b(bsbox[a])%256sbox[a],sbox[b]sbox[b],sbox[a]c(sbox[a]sbox[b])%256ksbox[c]char_codeord(src_str[i])tempchar_code^k hex_strformat(temp,x)iflen(hex_str)1:hex_str0hex_streliflen(hex_str)0:hex_str00output.append(hex_str)return.join(output)defget_current_time():获取当前格式化时间returndatetime.now().strftime(%Y-%m-%d %H:%M:%S)asyncdefcheck_network(session): 异步检查网络是否正常 (通过访问百度) 返回: True (正常) / False (异常) try:# 设置较短的超时时间避免长时间等待asyncwithsession.get(NETWORK_CHECK_URL,timeoutaiohttp.ClientTimeout(total10))asresponse:ifresponse.status200:returnTruereturnFalseexceptExceptionase:# 打印简短的错误信息供调试但不阻断流程# print(f [调试] 网络检查异常: {e})returnFalseasyncdefdo_login(session): 执行异步登录操作 返回: True (登录成功) / False (登录失败) print(f[{get_current_time()}] 正在尝试登录认证...)# 1. 生成加密数据rckeystr(int(time.time()*1000))encrypted_pwddo_encrypt_rc4(PASSWORD,rckey)payload{opr:pwdLogin,userName:USERNAME,pwd:encrypted_pwd,auth_tag:rckey,rememberPwd:1}headers{User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36,X-Requested-With:XMLHttpRequest}try:asyncwithsession.post(LOGIN_URL,datapayload,headersheaders,timeoutaiohttp.ClientTimeout(total10))asresponse:# 先获取 HTTP 状态码ifresponse.status200:# 【核心修改】先获取文本内容而不是直接 json()# response.text() 返回的是字符串text_contentawaitresponse.text()# 尝试解析为 JSON (兼容原逻辑)try:datajson.loads(text_content)# 使用 json.loads 解析字符串print(f响应内容{text_content})ifdata.get(success):print(f{Back.GREEN}[{get_current_time()}] √ 登录成功)returnTrueelse:print(f{Back.RED}[{get_current_time()}] x 登录失败:{data.get(msg,服务器返回错误)})returnFalseexcept(json.JSONDecodeError,ValueError):# 【核心修改】如果不是 JSON执行这里的逻辑# 情况 A: 服务器可能直接返回了一个 URL 字符串# 判断是否包含 http (简单判断)ifhttpintext_contentandlen(text_content)200:print(f[{get_current_time()}] √ 登录成功 (服务器返回URL:{text_content}))# 如果需要跳转可以在这里处理 text_contentreturnTrue# 情况 B: 服务器返回了 HTML 网页 (例如直接跳转到了首页)# 可以通过判断是否包含 /html 或特定关键字elifhomepageintext_contentorindexintext_content:print(f[{get_current_time()}] √ 登录成功 (服务器返回了网页内容))returnTrue# 情况 C: 未知的文本内容else:print(f[{get_current_time()}] x 登录失败: 服务器返回非JSON数据)# 打印前100个字符方便调试print(f 返回内容摘要:{text_content[:100]}...)returnFalseelse:print(f[{get_current_time()}] x 登录失败: HTTP状态码{response.status})returnFalseexceptExceptionase:print(f[{get_current_time()}] x 登录请求异常:{e})returnFalseasyncdefmain_loop(): 主控制循环 print(f[{get_current_time()}] 程序启动初始化会话...)# 使用 aiohttp.ClientSession 保持会话asyncwithaiohttp.ClientSession()assession:whileTrue:# 1. 检查网络状态# print(f[{get_current_time()}] 正在进行网络连通性检查)is_net_okawaitcheck_network(session)ifis_net_ok:print(f{Fore.GREEN}[{get_current_time()}] 网络正常。)# 网络正常休眠后进行下一次检查wait_timeCHECK_INTERVAL_NORMALelse:# 网络异常尝试登录print(f[{get_current_time()}] ⚠ 网络异常)login_successawaitdo_login(session)iflogin_success:# 登录成功恢复正常检查周期wait_timeCHECK_INTERVAL_NORMALelse:# 登录失败进入快速重试周期 (5分钟)print(f[{get_current_time()}] 将在 5 分钟后重试...)wait_timeCHECK_INTERVAL_RETRY# 2. 异步休眠不阻塞系统# 使用 asyncio.sleep 而不是 time.sleepprint(f[{get_current_time()}] 等待{wait_time/60:.0f}分钟后进行下一次任务...)awaitasyncio.sleep(wait_time)if__name____main__:try:# 运行异步主循环asyncio.run(main_loop())exceptKeyboardInterrupt:print(f\n[{get_current_time()}] 用户手动停止程序。)注代码问智谱4.7写的.

相关文章:

保持上网认证

上网需要账号认证,而且在凌晨系统就会自动将账号踢下线。一家叫Sangfor做的客户端,不安它就上不了网。 需要远程查看设备状态,掉线了就连不进来了。找人去申请长时间在线,结果是1天1掉线,之前还是两天1掉线。 基础的东…...

2026届最火的十大AI辅助论文工具推荐榜单

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 在学术跟内容创作范畴,让文本被人工智能检测出的概率降低,已然成了普…...

Unity多场景叠加实战:用附加模式加载第二个场景时,如何避免AudioListener和EventSystem的重复警告?

Unity多场景叠加实战:避免AudioListener和EventSystem重复警告的深度解决方案 当你在Unity项目中尝试使用SceneManager.LoadSceneAsync实现多场景叠加时,控制台突然弹出"There are 2 audio listeners in the scene"和"There are 2 event…...

想买的车安不安全?手把手教你看懂CNCAP2021版ADAS测试报告(含AEB/LKA/BSD详解)

买车必看:普通人也能秒懂的CNCAP主动安全测试指南 站在4S店展厅里,销售顾问指着配置表上的"CNCAP五星安全认证"滔滔不绝时,你是否真正理解这几个字母背后的含义?当看到测试报告中"AEB CCRs 4.8分"、"LKA…...

信贷平台数据(2007-2018年)

01、数据介绍在信贷业务中,准确预测用户贷款是否违约对于金融机构的风险管理至关重要。我们拥有来自某信贷平台的庞大贷款记录数据集,该数据集总量超过120万条,涵盖了47列丰富的变量信息,其中包括15列匿名变量,为模型训…...

SLA设得很严格,为什么IT服务台满意度还是上不去?

一、SLA看起来很专业,但用户却不买账在很多企业的IT管理体系中,SLA(服务级别协议)已经成为一个“标配”。无论是ITSM系统上线,还是IT服务台规范化建设,都会围绕SLA来设计指标:响应时间 处理时长…...

RGMII 接口详细说明

1. 什么是 RGMII 接口? RGMII(Reduced Gigabit Media Independent Interface,精简版千兆独立介质接口)是主控芯片内部的 MAC(Media Access Control,媒体访问控制)与以太网物理层芯片&#xff08…...

PCBA主要包括哪些测试

PCBA测试是指对PCBA板进行IC烧录、线路通断情况以及电流、电压、压力等方面的测试。PCBA在生产过程有很多不可控的因素,很难确保PCBA是完好的产品,PCBA测试是严控出货品质的必要环节。接下来就与大家介绍PCBA测试的主要流程。一、PCBA测试主要包括哪些测…...

深圳沙井高低温可靠性实验室

深圳市中鉴检测技术有限公司(CCTI TEST)地址:深圳市宝安区沙井街道壆岗社区岗头路 45 号 B1、B2 栋 A1(沙井壆岗实验室)资质:CNAS L13910、ILAC 互认,ISO17025 管理体系;国家高新技术…...

你的@Service注解用对了吗?从‘non-compatible bean definition’错误深入理解Spring Bean命名机制

你的Service注解用对了吗?从‘non-compatible bean definition’错误深入理解Spring Bean命名机制 在Spring框架的日常开发中,许多开发者都曾遇到过这样的错误提示:"non-compatible bean definition of same name and class"。表面…...

ChatGPT Img 2.0 就是这么强大:AI 作图进入“可控创作”阶段

🔥个人主页:杨利杰YJlio❄️个人专栏:《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》 《Python》 《Kali Linux》 《那些年未解决的Windows疑难杂症》🌟 让复杂的事情更…...

保姆级避坑指南:在Windows 11上用Anaconda为PyTorch 1.11.0创建Python 3.8虚拟环境,并搞定GPU加速(torchvision 0.12.0+cu113)

Windows 11下Anaconda环境配置与PyTorch 1.11.0 GPU加速全攻略 刚接触深度学习的开发者往往会在环境配置阶段遇到各种"玄学问题"。本文将手把手带你完成从零开始的完整配置流程,重点解决那些官方文档没告诉你、但实际工作中一定会遇到的坑。 1. 环境准备&…...

别再只看跑分了!3dMax渲染选CPU,AMD Threadripper 3970X和3990X的真实工作流效率对比

3D渲染师的选择困境:Threadripper 3970X与3990X在实际工作流中的效能博弈 当渲染进度条卡在99%时,每个3D艺术家都经历过那种心脏停跳的瞬间。在这个追求效率的时代,AMD Threadripper系列以其惊人的核心数量重新定义了CPU渲染的边界。但核心数…...

4月24日今日热点速览:从经济修复到科技突破,几个信号值得关注

🔥个人主页:杨利杰YJlio❄️个人专栏:《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》 《Python》 《Kali Linux》 《那些年未解决的Windows疑难杂症》🌟 让复杂的事情更…...

Windows Server 域控高可用实战:图文详解搭建辅域控制器(副域控)

前言 在企业级网络环境中,单台域控制器(DC)存在明显的“单点故障”风险。一旦主域控宕机,整个企业的身份验证、组策略下发等核心功能将全部瘫痪。因此,搭建附加域控制器是实现AD(活动目录)高可用的必经之路。 本文将以 Windows Server 为例,手把手教你如何将一台新服务…...

Spring Boot 3.x 连接MongoDB 6.0踩坑记:UncategorizedMongoDbException: error 13 权限问题保姆级排查

Spring Boot 3.x 与 MongoDB 6.0 权限问题深度排查指南 最近在升级技术栈时,不少开发者反馈Spring Boot 3.x连接MongoDB 6.0时频繁遇到UncategorizedMongoDbException: error 13权限问题。这个错误表面看是认证失败,实则背后隐藏着版本迭代带来的安全策略…...

WT161彩屏原厂芯片儿童涂鸦画板手写板IC芯片涂鸦板控制芯片WT162

WT161彩屏原厂芯片是专为儿童涂鸦画板、手写板设计的IC芯片及涂鸦板控制芯片,具备低功耗、一键擦写、自动升压、正负脉冲擦写、擦写脉冲电压可调等特性,采用SOP8封装,支持3V纽扣电池或干电池供电,外围电路简单,可降低采…...

别再乱写SDC了!从creat_clock到set_clock_group,一份给数字IC新手的时钟约束避坑指南

数字IC设计时钟约束实战:从基础命令到异步时钟组的最佳实践 时钟约束是数字IC设计中不可或缺的一环,它直接影响着芯片的时序收敛和功能正确性。对于刚入行的工程师来说,面对SDC文件中各种时钟相关命令,常常感到无从下手。本文将从…...

如何高效管理Windows窗口缩放:Magpie系统托盘功能的完整实现方案

如何高效管理Windows窗口缩放:Magpie系统托盘功能的完整实现方案 【免费下载链接】Magpie A general-purpose window upscaler for Windows 10/11. 项目地址: https://gitcode.com/gh_mirrors/mag/Magpie Magpie是一款专为Windows 10/11设计的通用窗口放大器…...

抖音无水印视频下载终极指南:3分钟快速上手免费批量下载工具

抖音无水印视频下载终极指南:3分钟快速上手免费批量下载工具 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback…...

CSS选择器高级应用与最佳实践

CSS选择器高级应用与最佳实践 什么是CSS选择器? CSS选择器是用于选择HTML元素并应用样式的模式,是CSS的核心组成部分。 CSS选择器的基础类型 1. 元素选择器 选择特定类型的HTML元素: p {color: blue; }div {margin: 10px; }2. 类选择器 选择具…...

Flutter导航与路由高级技巧与最佳实践

Flutter导航与路由高级技巧与最佳实践 什么是Flutter导航与路由? Flutter导航与路由是指在Flutter应用程序中不同页面之间的跳转和管理机制,包括基本导航、命名路由、参数传递等功能。 Flutter导航的核心概念 1. 基本导航 使用Navigator进行基本的页面跳…...

如何用免费开源在线3D查看器实现跨平台CAD协作与模型分析?

如何用免费开源在线3D查看器实现跨平台CAD协作与模型分析? 【免费下载链接】Online3DViewer A solution to visualize and explore 3D models in your browser. 项目地址: https://gitcode.com/gh_mirrors/on/Online3DViewer 在数字化设计时代,3D…...

高通cDSP性能调优踩坑实录:从Debug到Release,我的代码快了10倍

高通cDSP性能调优实战:从Debug到Release的10倍性能飞跃 第一次看到cDSP代码在Release模式下跑出比Debug快10倍的结果时,我差点以为仪器出错了。作为已经在嵌入式领域摸爬滚打八年的老手,我见过各种优化手段带来的性能提升,但一个简…...

AD9361 LVDS接口实战避坑:用FPGA调试时,DATA_CLK和FB_CLK到底该怎么接?

AD9361 LVDS接口实战避坑:FPGA调试中DATA_CLK与FB_CLK的正确连接指南 在无线通信系统的硬件设计中,AD9361作为一款高性能射频收发器,其LVDS接口的正确配置往往是项目成败的关键。许多工程师在初次接触AD9361时,都会对DATA_CLK和FB…...

收藏!大模型面试八题深度复盘,带你从小白到技术大牛

本文详细复盘了美团大模型算法暑期实习二面过程,包含八道核心问题的逐题解析、考察意图及深度答案。内容涵盖实习项目、强化学习框架、模型幻觉处理、推理模式、行业趋势、MoE原理及代码实现等,旨在帮助大模型方向求职者提升面试准备,强调项目…...

保姆级教程:在Ubuntu 20.04/ROS Noetic下用Gazebo和YOLOv5实现机械臂抓取仿真

保姆级教程:Ubuntu 20.04/ROS Noetic下搭建YOLOv5机械臂抓取仿真环境 刚接触ROS机器人仿真的开发者,往往会在环境配置阶段耗费大量时间。不同Ubuntu版本、ROS发行版以及第三方库的兼容性问题,让许多新手在第一步就举步维艰。本文将提供一个从…...

拆解大疆M300电池BMS:基于TI TIDA-010030方案的硬件架构深度分析

大疆M300智能电池BMS系统解析:基于TI TIDA-010030的工程实践 当一块大疆M300无人机电池从30米高空坠落时,其内置的电池管理系统(BMS)仍能精确上报剩余电量并触发安全保护——这背后是德州仪器TIDA-010030参考设计与大疆工程团队的…...

说一下前端转后端半个月的真实感受吧

今天是我从前端转后端的第十五天,没有什么华丽的感慨,只有一个最真实的感受——累,身心俱疲,连敲键盘的力气都快没了。当初领导找我谈转岗,说后端缺人,觉得我前端基础还行,转过去能快速上手&…...

Windows 10/11 下用 YOLOv5 训练自己的数据集:从标注到部署的保姆级避坑指南

Windows平台YOLOv5实战:从零构建定制化目标检测模型的完整指南 1. 环境配置与工具准备 在Windows系统上搭建YOLOv5开发环境需要特别注意版本兼容性问题。不同于Linux系统,Windows对CUDA和PyTorch的版本组合更为敏感。以下是经过验证的稳定配置方案&#…...