最新查zhwhrq,无需抓包

  [复制链接]
143929 51
本帖最后由 qmqsyz 于 2024-7-30 11:39 编辑
这篇文章介绍了新的查询zhwhrq方法:https://www.flyert.com.cn/t-4644045-1-1.html
但是需要抓包,这个难度很大,于是写了个python脚本查看申请进度。
每次查询需要间隔半小时以上,不然会提示“卡号和证件号不可全部为空”
使用方法:安装python环境(不会的百度),将以下代码复制保存为zhwhrq.py,然后运行python zhwhrq.py
import requests
import json
import ssl
from requests.adapters import HTTPAdapter
from urllib3.poolmanager import PoolManager
class UnsafeLegacyRenegotiationAdapter(HTTPAdapter):
    def init_poolmanager(self, *args, **kwargs):
        context = ssl.create_default_context()
        try:
            context.options |= ssl.OP_LEGACY_SERVER_CONNECT
        except AttributeError:
            context.check_hostname = False
            context.verify_mode = ssl.CERT_NONE
        kwargs['ssl_context'] = context
        return super().init_poolmanager(*args, **kwargs)
def initialize_cookies():
    url = "https://wx.abchina.com/instH5/respectStage.html"
    session = requests.Session()
    session.mount("https://", UnsafeLegacyRenegotiationAdapter())
    response = session.get(url)
    if response.status_code == 200:
        print("初始化接口请求成功")
        return response.cookies
    else:
        print("初始化接口异常,状态码:", response.status_code)
        return None
def send_sms_request(id_number, cookies):
    url = "https://wx.abchina.com/instServe/enjoystage/stageapply/getPhoneAndSendSms"
    headers = {
        "Accept": "application/json, text/plain, */*",
        "Accept-Encoding": "gzip, deflate, br, zstd",
        "Accept-Language": "zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7",
        "Connection": "keep-alive",
        "Content-Type": "application/json",
        "Host": "wx.abchina.com",
        "Origin": "https://wx.abchina.com",
        "Referer": "https://wx.abchina.com/instH5/respectStage.html",
        "X-Requested-With": "com.tencent.mm"
    }
    body = {
        "data": {
            "idNumber": id_number,
            "idType": "110001"
        }
    }
    print("获取验证码请求数据:", json.dumps(body, ensure_ascii=False))
    session = requests.Session()
    session.mount("https://", UnsafeLegacyRenegotiationAdapter())
    response = session.post(url, headers=headers, cookies=cookies, data=json.dumps(body))
    return response
def check_sms_code(verify_code, cookies):
    url = "https://wx.abchina.com/instServe/enjoystage/stageapply/checkSms"
    headers = {
        "Accept": "application/json, text/plain, */*",
        "Accept-Encoding": "gzip, deflate, br, zstd",
        "Accept-Language": "zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7",
        "Connection": "keep-alive",
        "Content-Type": "application/json",
        "Host": "wx.abchina.com",
        "Origin": "https://wx.abchina.com",
        "Referer": "https://wx.abchina.com/instH5/respectStage.html",
        "X-Requested-With": "com.tencent.mm"
    }
    body = {
        "data": {
            "verifyCode": verify_code
        }
    }
    print("验证验证码请求数据:", json.dumps(body, ensure_ascii=False))
    session = requests.Session()
    session.mount("https://", UnsafeLegacyRenegotiationAdapter())
    response = session.post(url, headers=headers, cookies=cookies, data=json.dumps(body))
    return response.json()
def main():
    cookies = initialize_cookies()
    if not cookies:
        return
    id_number = input("请输入身份证号:")
    while True:
        response = send_sms_request(id_number, cookies)
        response_data = response.json()
        print("获取验证码请求结果:resCode:", response_data.get("resCode"), "resMsg:", response_data.get("resMsg"))
        if response_data.get("resCode") == "2000":
            cookies.update(response.cookies)
        else:
            print("身份证号验证失败,请重新输入。")
            id_number = input("请输入身份证号:")
            continue
        while True:
            verify_code = input("请输入收到的验证码:")
            response = check_sms_code(verify_code, cookies)
            print("验证验证码请求结果:resCode:", response.get("resCode"), "resMsg:", response.get("resMsg"))
            if response.get("resCode") == "2000":
                data = response.get("data")
                if data:
                    try:
                        data_list = json.loads(data)
                        for item in data_list:
                            print(item)
                    except json.JSONDecodeError:
                        print("data字符串解析失败")
                else:
                    print("data为空")
                return
            elif "请重新获取" in response.get("resMsg", ""):
                print("验证码已失效,请重新获取。")
                break  # 跳出内层循环,重新发送验证码
            else:
                print("验证码验证失败,请重新输入。")
if __name__ == "__main__":
    main()

评分 ( 1人) 威望 理由 总评分: 威望 +5  查看全部评分
系统奖励
+ 5 恭喜, 每10个回复奖励1个威望, 每贴最高奖励10威望。
鲜花 (30朵) 鲜花榜
EliasZuo2024-11-1 19:23
送了1朵鲜花:  感谢前辈!
恒JC2024-9-9 20:00
送了1朵鲜花:  Life is better when shared!
d1f2y3t4l52024-9-6 16:39
送了1朵鲜花:  Life is better when shared!
Handsome大宇2024-8-27 02:20
送了1朵鲜花:  Life is better when shared!
可耐滴小脑斧2024-8-27 00:55
送了1朵鲜花:  Life is better when shared!
上一篇:  下一篇: 

关注本版大神,阅读更多精彩好文

51 个评论

kadaniu  钻石会员  | 2024-7-29 16:02:22  上海  | 显示全部楼层
404 Not Found
ckckcck  钻石会员  | 2024-7-29 16:11:35  上海  | 显示全部楼层
你说我拿这个脚本去ddos,把农行系统搞崩了,算不算你一份功劳,这就是为什么大多数只交方法,而不给具体的脚本
鲜花 (1朵) 鲜花榜
gpx2024-8-8 22:23
送了1朵鲜花:  Life is better when shared!
qmqsyz  白金会员   楼主 | 2024-7-29 16:49:19  广东  | 显示全部楼层
传不了文件,直接保存代码运行吧。
CanYang  钻石会员  | 2024-7-29 17:19:05  上海  | 显示全部楼层
qmqsyz 发表于 2024-7-29 15:58
这篇文章介绍了新的查询zhwhrq方法:https://www.flyert.com.cn/t-4644045-1-1.html
但是需要抓包,这个难 ...
谢谢分享!
1、脚本需要保存为UTF-编码,否则会报错
2、格式化了import语句后,运行仍然报错……
巴索罗米·熊  蓝钻会员  | 2024-7-29 17:21:52  广东  | 显示全部楼层
这…看不懂
TerryKong  蓝钻会员  | 2024-7-29 17:22:35  广东  | 显示全部楼层
码农的崛起
qmqsyz  白金会员   楼主 | 2024-7-29 17:36:17  广东  | 显示全部楼层
CanYang 发表于 2024-7-29 17:19
谢谢分享!
1、脚本需要保存为UTF-编码,否则会报错
已经修改了,再试试
一只萌新ovo  白金会员  | 2024-7-29 17:49:32  四川  | 显示全部楼层
验证验证码请求数据: {"data": {"verifyCode": "594218"}}
验证验证码请求结果:resCode: 4003 resMsg: 卡号和证件号不可全部为空
qmqsyz  白金会员   楼主 | 2024-7-29 17:51:34  广东  | 显示全部楼层
一只萌新ovo 发表于 2024-7-29 17:49
验证验证码请求数据: {"data": {"verifyCode": "594218"}}
验证验证码请求结果:resCode: 40 ...
查询过多,等半小时以上再查询
小二郎啊  银卡会员  | 2024-7-29 18:25:20  上海  | 显示全部楼层
查这个的意义是?
飞客235890  银卡会员  | 2024-7-29 18:25:57  上海  | 显示全部楼层
安卓上保存了,怎么运行呢
这有  钻石会员  | 2024-7-29 18:29:00  广东  | 显示全部楼层
厉害 abc域名竟然还有人想着ddos,难道人家就没有cdn吗,再套一层防火墙+ip高容量,你能打得动?
xjs3641  白金会员  | 2024-7-29 18:35:49  北京  | 显示全部楼层
curl 容易点
flymywyx  黑钻会员  | 2024-7-29 21:20:23  贵州  | 显示全部楼层
怎么运用啊
googlemap001  白金会员  | 2024-7-29 21:33:45  广东  | 显示全部楼层
这个是干嘛的啊
小星星额  钻石会员  | 2024-7-29 21:54:00  浙江  | 显示全部楼层
ckckcck 发表于 2024-7-29 16:11
你说我拿这个脚本去ddos,把农行系统搞崩了,算不算你一份功劳,这就是为什么大多数只交方法,而不给具体的脚本
没事,没几个人会的,再说了服务端限流是基操
鲜花 (1朵) 鲜花榜
allen192024-7-29 23:31
送了1朵鲜花:  Life is better when shared!
fyfing  黑钻会员  | 2024-7-29 22:21:24  江苏  | 显示全部楼层
程序猿上线
飞客3238703  白金会员  | 2024-7-29 23:56:08  北京  | 显示全部楼层
没成功,不懂代码,不知道哪里的问题
[root@i-89516c2a ~]# python abc.py
Traceback (most recent call last):
  File "abc.py", line 3, in
    import requests
ImportError: No module named requests
Ren.YW  钻石会员  | 2024-7-30 00:25:19  四川  | 显示全部楼层
飞客3238703 发表于 2024-7-29 23:56
没成功,不懂代码,不知道哪里的问题
[root@i-89516c2a ~]# python abc.py
Traceback (most recent call last):
  File "abc.py", line 3, in
    import requests
ImportError: No module named requests
依赖
鲜花 (1朵) 鲜花榜
飞客32387032024-7-30 09:14
送了1朵鲜花:  Life is better when shared!

本版积分规则


快捷回复

快速评论 返回顶部 返回列表