import requests import json def get_wechat_access_token(appid,secret,code): """ 正确返回值: { "access_token":"ACCESS_TOKEN", "expires_in":7200, "refresh_token":"REFRESH_TOKEN", "openid":"OPENID", "scope":"SCOPE", "unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL" } """ # 微信OAuth2.0 access_token接口URL url = f'https://api.weixin.qq.com/sns/oauth2/access_token?appid={appid}&secret={secret}&code={code}&grant_type=authorization_code' # 发送GET请求 response = requests.get(url) # 检查请求是否成功 if response.status_code == 200: # 解析JSON响应 data = response.json() return data else: # 如果请求失败,打印错误信息 print(f"Error: {response.status_code}, {response.text}") return {} def get_wechat_userinfo(access_token,openid): """ 正确返回数据 { "openid": "OPENID", "nickname": "NICKNAME", "sex": 1, "province": "PROVINCE", "city": "CITY", "country": "COUNTRY", "headimgurl": "http://thirdwx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6ficibnY/0", "privilege": [ "PRIVILEGE1", "PRIVILEGE2" ], "unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL" } """ #lang = 'zh_CN' # 可选参数,语言,如:'zh_CN', 'zh_TW', 'en' # 微信OAuth2.0 userinfo接口URL url = f'https://api.weixin.qq.com/sns/userinfo?access_token={access_token}&openid={openid}&lang=zh_CN' # 发送GET请求 response = requests.get(url) # 检查请求是否成功 if response.status_code == 200: content=response.content.decode("utf-8") # 解析JSON响应 data = json.loads(content) return data else: # 如果请求失败,打印错误信息 raise(f"Error: {response.status_code}, {response.text}")