当前位置 博文首页 > 利用Python实现QQ实时到账免签支付功能

    利用Python实现QQ实时到账免签支付功能

    作者:学不好python不改名 时间:2021-05-24 18:25

    原创 转载请注明出处
    核心部分:解决QQ的登录验证问题
    主要利用python的selenium库和QQ的快速登录实现登录网页
    再利用抓到的json来输出今日的订单情况
    直接上代码

    import requests
    import time
    import os
    from selenium import webdriver
    import sys
    import shutil
    import json
    '''
    注意:要实现QQ钱包实时到账
    需要在服务器上登录QQ
    且需要在服务器上配置python3 chrome浏览器 和chrome driver
    '''
    #path="D:\\wwwroot\\"
    '''
    可以在这里传入QQ的值
    try:
     #qq = sys.argv[1]#获取外部参数 传入QQ的值
     print("您所查询的QQ为:" + qq)
     if os.path.exists(path+"km\\user\\"+qq+".php"):
      print("存在文件!")
      output("卡密已经生成过了!您的卡密为您的QQ号")
      sys.exit(0)
      wy.close()
    except:
      wy.close()
      print("请用带参函数运行该文件,否则无法查询!")
      sys.exit(0)
    '''
    wy = webdriver.Chrome(r'D:\chromedriver.exe')#这里填写chrome driver的路径
    wy.get('https://www.tenpay.com/v3/trade/trade_details_list.shtml?ADTAG=tenpay_v3.trade.query.details')
    flag=0
    while(flag==0):
     wy.refresh()
     time.sleep(3)
     s = wy.find_elements_by_class_name("ipf-title")
     if len(s) == 0:
      print("特征码未找到,正在进行订单查询")
      flag=1
     else :
      print("找到特征码,正在执行下方代码")
      wy.get('https://www.tenpay.com/v3/trade/trade_details_list.shtml?ADTAG=tenpay_v3.trade.query.details')
      time.sleep(2)
      wy.switch_to.frame('quick_login_iframe')
      wy.find_element_by_id("img_out_你的QQ").click()#这里输入QQ
      time.sleep(5)
    wy.get('https://www.tenpay.com/app/v1.0/account_detail_today.cgi')
    origin_no_json=wy.find_element_by_xpath("/html/body").text
    origin_json=json.loads(origin_no_json)
    dataList = origin_json.get('records')
    print("近几天所有订单如下:\n")
    for item in dataList:
     try:
      money = item["amount"]
      print("订单创建时间:" + item["create_time"] + " 订单ID:" + item["trans_id"] + " 订单金额:"+str(int(money)*0.01)+" 转账人QQ号:"+item["payer_id"])
     except:
      money = item["amount"]
      print("订单创建时间:" + item["create_time"] + " 订单ID:" + item["trans_id"] + " 订单金额:" + str(int(money)*0.01) )
    data=dataList[0]
    print("最新交易订单如下:\n")
    try:
     money = data["amount"]
     real_qq=data["payer_id"]
     money=str(int(money) * 0.01)
     print("订单创建时间:" + data["create_time"] + " 订单ID:" + data["trans_id"] + " 订单金额:" + money+ " 转账人QQ号:" +real_qq)
     if(real_qq==qq):
      if(money=="2.0"):
       output("您的卡密生成成功,为您的QQ号")
       print("一天卡密生成成功")
      elif(money=="9.9"):
       output("您的卡密生成成功,为您的QQ号")
       print("一个月卡密生成成功")
      else:output("您支付的金额错误!!")
     else:
      output("您输入的Q Q号错误!!请确保您的QQ号已经支付成功!")
      print("您输入的QQ号错误 请输入正确的QQ号")
     wy.close()
    except:
     money = data["amount"]
     print("订单创建时间:" + data["create_time"] + " 订单ID:" + data["trans_id"] + " 订单金额:" + str(int(money)*0.01))
     wy.close()

    目前我搭建的QQ免签还挺稳定的。能实现简单的支付和输出订单号。

    在这里插入图片描述

    上图是获取的最近交易的订单信息
    可以用上图的信息进行支付判断
    小白学习 如有误 请大佬纠正。

    js
    下一篇:没有了