Home >WeChat Applet >Mini Program Development >Two ways to use Python to generate QR codes in WeChat mini programs
This article brings you two ways to use Python to generate QR codes in WeChat mini programs. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.
WeChat applet generates QR code:
The language used is python, there are two ways:
1: The backend passes a string to the frontend, and the frontend displays
2: The backend directly generates the picture
1: The backend passes a string to the frontend, and the frontend displays
def get_wxCode(Request, UserInfo): try: scene = Request["scene"] access_token = get_wxCode_token() if not access_token: return False textmod = {"scene": scene, "page": "pages/index/main", "width": 430, "auto_color": True, "is_hyaline": False} textmod = json.dumps(textmod).encode(encoding='utf-8') header_dict = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko', "Content-Type": "application/json"} url = 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=' + access_token req = request.Request(url=url, data=textmod, headers=header_dict) res = request.urlopen(req) res = res.read() b64str = base64.b64encode(res) return b64str except Exception as e: print(e) return False
var getWXcode2 = function(hostname){ //获取管理端小程序码 //动态获取域名,若为本地环境,则默认携带参数为wx-test //示例:londex.i-plc.cn var hostname1 = window.location.host; hostname1 = hostname1.split('.')[0]; if(hostname1 == '127' || hostname1 == 'localhost'){ hostname1 = hostname; } if(window.localStorage.getItem('wxcode2')){ $('#wxcodeImg2').attr('src','data:image/png;base64,'+ window.localStorage.getItem('wxcode2')); $('#wxCodeModal2').modal('show'); return; } var params = { "scene":hostname1, }; $.ajax({ type:'post', url:'/request?rname=i_plc.Page.wechat_api.wechat.get_wxCode', data:params, success:function (res) { console.log(res) if(res === false){ $.MessageBox.notify('warn', '获取失败,请稍后再试!'); }else{ console.log(res) $('#wxcodeImg2').attr('src','data:image/png;base64,'+res); $('#wxCodeModal2').modal('show'); window.localStorage.setItem('wxcode2',res) } } }); };
2: The backend directly generates the picture
def get_wxCode(Request, UserInfo): """ 生成小程序二维码 :param Request: :param UserInfo: :return: """ result = {"success": False} try: # scene = Request["scene"] access_token = get_wxCode_token() if not access_token: raise Exception("access_token") compid = Request["compid"] sql = "select compIndex from company where operationFlag=9 and compID=%s" % compid Result = SqlRun(sql) if Result["Data"] and Result["Data"][0] and Result["Data"][0][0]: scene = Result["Data"][0][0] textmod = {"scene": scene, "page": "pages/index/main", "width": 430, "auto_color": True, "is_hyaline": False} textmod = json.dumps(textmod).encode(encoding='utf-8') header_dict = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko', "Content-Type": "application/json"} url = 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=' + access_token req = request.Request(url=url, data=textmod, headers=header_dict) res = request.urlopen(req) res = res.read() b64str = base64.b64encode(res) imgdata=base64.b64decode(b64str) path = "static/tmpfiles/scan_%s.png" % file_name file = open(os.path.join(settings.BASE_DIR, path,), 'wb+') file.write(imgdata) file.close() result["code_url"] = path result["success"] = True except Exception as e: result["error_msg"] = str(e) return json.dumps(result) def get_wxCode_token(): try: textmod = {"grant_type": "client_credential", "appid": "wx44a452fb08b0a990", "secret": "9aedb0a274027bdd09612fbde3298129" } textmod = parse.urlencode(textmod) header_dict = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko'} url = 'https://api.weixin.qq.com/cgi-bin/token' req = request.Request(url='%s%s%s' % (url, '?', textmod), headers=header_dict) res = request.urlopen(req) res = res.read().decode(encoding='utf-8') res = json.loads(res) access_token = res["access_token"] return access_token except Exception as e: print(e) return False
Related recommendations:
WeChat applet PHP generates QR code with parameters
##WeChat applet user clicks the button to generate QR code with parameters Code sample code
The above is the detailed content of Two ways to use Python to generate QR codes in WeChat mini programs. For more information, please follow other related articles on the PHP Chinese website!