1**.首先到微信公众号开发者文档查看如何获取带参数的二维码 https://developers.weixin.qq.com/doc/offiaccount/Account_Management/Generating_a_Parametric_QR_Code.html
返回json类型数据:{“ticket”:“gQH47joAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL2taZ2Z3TVRtNzJXV1Brb3ZhYmJJAAIEZ23sUwMEmm
3sUw==”,“expire_seconds”:60,“url”:“http://weixin.qq.com/q/kZgfwMTm72WWPkovabbI”}
2.访问前需要先获取参数access_token的值 查看文档
https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_access_token.html
返回json类型数据:{“access_token”:“ACCESS_TOKEN”,“expires_in”:7200}**
3.获取到ticket后直接访问https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=TICKET 连接即可获取二维码
import json
import urllib
import requests
APP_ID = "wx7b10b0c5448d080b"
APP_SECRET = "4f57dcf9e1f866971f30931420b70955"
def wechat():
# 获取access_token
# url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s" %(APP_ID,APP_SECRET)
#
# response = requests.get(url)
# json_str = response.text
# resp_dict = json.loads(json_str)
# if "errcode" in resp_dict:
# # return HttpResponse("获取access_token失败")
# print("获取access_token失败")
# access_token1 = resp_dict.get("access_token")
# print(access_token1)
# 获取二维码
url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=34_cCQoqExSgZAp2Gx6qnPqle9IA2y0qMUfUMVUFi1aGpfuc5aTJ3CN-X_fJqjJqUDex4phuh3q_pz9zISXRhw2-jFpZI7o3jUITbGGn253utdiGsMfnnGR_VfaM2etA-BYHeuaTT7kLwPwVoXMWXHfACALMW"
# POST参数
data = {
"action_name": "QR_LIMIT_SCENE",
"action_info": {
"scene": {
"scene_id": 1 #二维码的场景值
}
}
}
# request = requests.post(url, json=data)
request = requests.post(url, data=json.dumps(data))
# response = urllib.urlopen(request)
QR_json_str = request.text
QR_dict_data = json.loads(QR_json_str)
ticket = QR_dict_data.get("ticket")
print(ticket)
if __name__ == '__main__':
wechat()