50行代码完成微信个人收款码备注批量生成

个人收款一直是个头疼的问题,微信和支付宝官方都不给个人提供api接口和回调
于是想到使用批量备注的收款码,从备注1到备注1万,每个用户分配一张二维码,这样哪个用户支付的一目了然
下面贴出代码
#! /usr/bin/env python
#coding=utf-8
# by www.bugscaner.com
import time
import os
from pyzbar import pyzbar
from PIL import Image

'''
img = Image.open("05.png")
txt_list = pyzbar.decode(img)
print txt_list
'''

def getqr(price,id):
    print u"当前id:%d" % id
    #点击设置金额
    print u"点击设置金额"
    os.popen('adb shell input tap 420 1242')
    #输入金额100
    print u"设置金额100"
    os.popen('adb shell input text %d' % price)
    #点击备注
    print u"点击备注"
    os.popen('adb shell input tap 264 675')
    #这里输入法需要为英文键盘,才能打印出数字
    #os.popen('adb shell input tap 309 1700')
    #键入备注信息
    print u"键入备注信息"
    os.popen("adb shell input text %d" % id)
    time.sleep(0.5)
    #获取结果截图
    #发现这里经常出现卡顿现象,采用while方式获取
    while 1:
        #点击确定
        print u"点击确定"
        os.popen("adb shell input tap 891 720")
        # 再此点击确定
        time.sleep(0.5)        
        print u"再次点击重试"
        os.popen("adb shell input tap 594 864")
        print u"获取截图"
        os.popen("adb shell screencap -p /sdcard/tmp.png")
        #拉取到本地
        print u"图片拉取到本地"
        os.popen("adb pull /sdcard/tmp.png erweima/%d_%d.png" % (price,id))
        img = Image.open("erweima/%d_%d.png" % (price,id))
        txt_list = pyzbar.decode(img)
        info = str(txt_list)
        if "wxp://" in info:
            break
    #识别二维码内容
    #此处暂时跳过
    #点击清除金额
    print u"清除金额"
    os.popen("adb shell input tap 417 1458")

if __name__ == '__main__':
    for x in range(1,1500):
        getqr(50,x)

简单的50行代码搞定,完全模拟人工自动生成,平均4秒左右一个二维码
使用本代码需要依赖真机
我是用的魅族mx4  与电脑连接  安装完驱动
执行adb device  确保检测到了手机

把上面的代码保存为任意名称 比如 run.py  然后执行即可

备注:adb下载
adb下载

如果 adb device列表为空 ,一直检测不到手机
请在C:\Users\Administrator\.android\ 目录检查adb_usb.ini 是否添加了手机硬件id   vid



您可能还会对下面的文章感兴趣: