Python免滑块验证脚本

说明

这是一个用于自动登录京东并更新Cookie到青龙管理系统的Python脚本。脚本支持通过账号密码自动登录,适用于需要定期更新京东Cookie的情况,特别是在使用青龙等自动化工具进行京东相关活动脚本运行时。
在这里插入图片描述

代码展示

全代码如下

# -*- coding: utf-8 -*-
'''jdck.ini配置文件
Displaylogin=0  #是否显示登录操作,1显示,0不显示
qlip=http://192.168.1.1:5050  #填青龙的ip
client_id=*******    #填青龙对接应用的client_id
client_secret=*******     #填青龙对接应用的client_secret登陆号码#密码#备注      #多账户换行
5455434545#78875287278#我是备注1
154545454554#123456789#我是备注2废案:AutoJDCK_DP = http://192.168.0.1:8080     #设置登录代理(不建议设置代理,基本上要验证码)免责声明
本脚本仅供学习参考,请在下载后24小时内删除,请勿用于非法用途。
作者不对因使用该脚本造成的任何损失或法律问题负责。'''
import asyncio  # 异步I/O操作库
import random  #用于模拟延迟输入
from re import T  # 随机数生成库
import cv2  # OpenCV库,用于图像处理
import os  #读取配置文件
from pyppeteer import launch  # pyppeteer库,用于自动化控制浏览器
import aiohttp   #用于请求青龙
from urllib import request  # 用于网络请求,这里主要用来下载图片
from PIL import Image  #用于图像处理
import platform  #判断系统类型
import zipfile  #用于解压文件
from datetime import datetime #获取时间async def print_message(message):     #初始化异步printprint(message)async def ifconfigfile():                           #判断有没有配置文件global configfile            #配置文件全局变量configfile = 'jdck.ini'     #配置文件名称为if not os.path.exists(configfile):     #看看有没有配置文件configdata = [
'Displaylogin=0  #是否显示登录操作,1显示,0不显示\n',
'qlip=http://192.168.1.1:5700\n',
'client_id=*******\n',
'client_secret=*******\n',
'517123248#ya21udb95#我是备注1\n',
'15611167798#123456789#我是备注2\n',
]with open(configfile, 'w', encoding='utf-8') as file:     #打开配置文件file.writelines(configdata)       #写入configdata的内容到配置文件print('已在当前脚本目录下生成了配置文件,请修改后再运行')await asyncio.sleep(10)  # 等待10秒,等待raise SystemExitasync def download_file(url, file_path):        #初始化浏览器下载timeout = aiohttp.ClientTimeout(total=60000)  # 设置超时时间async with aiohttp.ClientSession(timeout=timeout) as session:async with session.get(url) as response:with open(file_path, 'wb') as file:file_size = int(response.headers.get('Content-Length', 0))downloaded_size = 0chunk_size = 1024while True:chunk = await response.content.read(chunk_size)if not chunk:breakfile.write(chunk)downloaded_size += len(chunk)progress = (downloaded_size / file_size) * 100print(f'已下载{progress:.2f}%...', end='\r')print('下载完成,进行解压安装....')async def init_web_display():                           #初始化浏览器显示配置global WebDisplay                             #设置为全局变量WebDisplay = True                             #默认不显示登录try:with open(configfile, 'r', encoding='utf-8') as file:for line in file:if 'Displaylogin=1' in line:                             #如果配置文件有Displaylogin=1这个东西WebDisplay = False                             #就变更成显示登录操作print('当前模式:显示web登录图形化界面')breakif WebDisplay:print("当前配置不显示web登录图形化界面,若要取消静默登陆,在配置文件中设置参数Displaylogin=1")except FileNotFoundError:print("读取配置文件时出错")async def init_chrome():        #判断chrome是否存在,不存在则下载,仅针对windowsif platform.system() == 'Windows':chrome_dir = os.path.join(os.environ['USERPROFILE'], 'AppData', 'Local', 'pyppeteer', 'pyppeteer', 'local-chromium', '588429', 'chrome-win32')chrome_exe = os.path.join(chrome_dir, 'chrome.exe')chmod_dir = os.path.join(os.environ['USERPROFILE'], 'AppData', 'Local', 'pyppeteer', 'pyppeteer', 'local-chromium', '588429', 'chrome-win32', 'chrome-win32')if os.path.exists(chrome_exe):returnelse:print('貌似第一次使用,未找到chrome,正在下载chrome浏览器....')chromeurl = 'http://npm.taobao.org/mirrors/chromium-browser-snapshots/Win_x64/588429/chrome-win32.zip'        #定义下载地址target_file = 'chrome-win.zip'                                                          #定义下载文件名await download_file(chromeurl, target_file)           #下载with zipfile.ZipFile(target_file, 'r') as zip_ref:zip_ref.extractall(chrome_dir)os.remove(target_file)for item in os.listdir(chmod_dir):              #移动所有文件source_item = os.path.join(chmod_dir, item)destination_item = os.path.join(chrome_dir, item)os.rename(source_item, destination_item)print('解压安装完成')await asyncio.sleep(1)  # 等待1秒,等待elif platform.system() == 'Linux':chrome_path = os.path.expanduser("~/.local/share/pyppeteer/local-chromium/1181205/chrome-linux/chrome")download_path = os.path.expanduser("~/.local/share/pyppeteer/local-chromium/1181205/")if os.path.isfile(chrome_path):passelse:print('貌似第一次使用,未找到chrome&#x

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

达托机器人(DRB)平台的安全性和前景是否可靠?

在当今数字化时代,技术创新不仅是企业成功的关键,也是整个行业的驱动力。在这个背景下,达托机器人(DRB)脱颖而出,以其创世团队的坚实基础和平台的可靠前景,引起了业界的广泛关注。 首先&#xf…

解锁金融数据中心场景,实现国产化AD替代,宁盾身份域管为信创电脑、应用提供统一管理

随着信创国产化改造持续推进,越来越多的金融机构不断采购信创服务器、PC、办公软件等,其 IT 基础设施逐渐迁移至国产化 IT 架构下。为支撑国产化 IT 基础设施的正常使用和集中管理运维,某金融机构数据中心的微软Active Directory(…

专题【双指针】【学习题】刷题日记

题目列表 11. 盛最多水的容器 42. 接雨水 15. 三数之和 16. 最接近的三数之和 18. 四数之和 26. 删除有序数组中的重复项 27. 移除元素 75. 颜色分类 167. 两数之和 II - 输入有序数组 2024.04.06 11. 盛最多水的容器 题目 给定一个长度为 n 的整数数组 height 。有 n 条垂…

信息论基础:生日问题

生日问题 我的小学同班同学小琦,和我是同一天生日。每次聚会,我俩同时在场时,我们都会向其他人提起这一点。我们觉得这是很幸运的。 这个概率大吗?要回答这样的问题,需要把几个问题区分清楚。 问题1:对于…

EXCEL地理数据处理工具(地图任务)

版本号 作者 修订内容 发布日期 1.0 小O 更新至0705版 2022-4-28 1.1 小O 更新至0772版 2024年4月3日 一、概述 小O地图EXCEL插件版提供基于EXCEL表格进行地理数据处理、地图可视化、地图绘图等功能,地理工具是用户使用频率很高的功能模块。地理工具能…

2024HW-->Wireshark攻击流量分析

在HW中,最离不开的,肯定是看监控了,那么就要去了解一些wireshark的基础用法以及攻击的流量!!!! 1.Wireshark的基本用法 比如人家面试官给你一段流量包,你要会用 1.分组详情 对于我…

构建未来数字化世界的统一用户中心产品架构

随着数字化时代的到来,用户数据管理变得愈发复杂,各类应用和服务的涌现使得用户信息分散存储,导致了数据孤岛和体验碎片化的问题。在这样的背景下,统一用户中心产品架构应运而生,为构建数字化世界提供了全新的解决方案…

Linux 常用指令及其理论知识

个人主页:仍有未知等待探索-CSDN博客 专题分栏:http://t.csdnimg.cn/Tvyou 欢迎各位指教!!! 目录 一、理论知识 二、基础指令 1、ls指令(列出该目录下的所有子目录和文件) 语法: …

基于单片机电容介电常数测量显示系统设计

**单片机设计介绍,基于单片机电容介电常数测量显示系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机电容介电常数测量显示系统的设计,是一个集成了电子技术、单片机编程、电容测量以及显…

GD32F470_寻迹避障模块 TCRT5000红外反射传感器模块移植

2.6 红外循迹传感器 红外循迹传感器采用TCRT5000红外反射传感器,一种集发射与接收于一体的光电传感器,它由一个红外发光二极管和一个NPN红外光电三极管组成。检测反射距离1mm-25mm适用,传感器特设M3固定安装孔,调节方向与固定方便…

websokcet服务端实现

一/websokcet服务端实现 步骤一&#xff1a; springboot底层帮我们自动配置了websokcet&#xff0c;引入maven依赖 1 2 3 4 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</arti…

红黑树深度解析:LEFT-ROTATE操作的艺术与实践

红黑树深度解析&#xff1a;LEFT-ROTATE操作的艺术与实践 一、什么是LEFT-ROTATE&#xff1f;二、LEFT-ROTATE的步骤三、LEFT-ROTATE的效果四、例子五、伪代码示例六、伪代码示例七、结论 在二叉搜索树中&#xff0c;旋转操作是维护树平衡的重要技术之一&#xff0c;特别是在红…