利用Python實現QQ實時到賬免簽支付功能

原創 轉載請註明出處
核心部分:解決QQ的登錄驗證問題
主要利用python的selenium庫和QQ的快速登錄實現登錄網頁
再利用抓到的json來輸出今日的訂單情況
直接上代碼

import requestsimport timeimport osfrom selenium import webdriverimport sysimport shutilimport 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=0while(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").textorigin_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免簽還挺穩定的。能實現簡單的支付和輸出訂單號。
在這裡插入圖片描述


上圖是獲取的最近交易的訂單信息
可以用上圖的信息進行支付判斷
小白學習 如有誤 請大佬糾正。

推薦閱讀: