import requests
from PIL import Image
import json
from io import BytesIO
URL = 'https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode'
def get_access_token(auth_params):
"""
获取微信access_token
"""
url = 'https://api.weixin.qq.com/cgi-bin/token'
content = requests.get(url, params=auth_params).content.decode('utf8')
return content
def generate_rq_code():
"""
获取小程序码, 调用该接口需要appid, apsecret
:param access_token:
:param page: 小程序页面
:param data: 参数
:param width: 尺寸, 280 - 1280
:return: 图片文件file
"""
# 获取token
auth_params = {
'grant_type': 'client_credential',
'appid': '', #appid 必传
'secret': '', #必传
'scene': '', #必传
}
access_token_info = get_access_token(auth_params)
if not access_token_info:
return '没有token'
resp = json.loads(access_token_info)
access_token = resp.get('access_token')
url = 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token={}'.format(access_token)
body = {
"page": '', #页面路径
"width": '430',
"scene": '', #必传
}
body = json.dumps(body)
respone = requests.post(url, data=body)
content = respone.content
if not content:
return '没有二进制流'
img = Image.open(BytesIO(content))
img.show()
if __name__ == '__main__':
generate_rq_code()