原创 转载请注明出处
核心部分:解决QQ的登录验证问题
主要利用python的selenium库和QQ的快速登录实现登录网页
再利用抓到的json来输出今日的订单情况
直接上代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
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免签还挺稳定的。能实现简单的支付和输出订单号。
上图是获取的最近交易的订单信息
可以用上图的信息进行支付判断
小白学习 如有误 请大佬纠正。
到此这篇关于利用Python实现QQ实时到账免签支付功能的文章就介绍到这了,更多相关Python实现QQ实时到账内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/qq_38326829/article/details/114648053