首先好好阅读一下微信开发文档
https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_access_token.html
首先你得知道你微信公众号的AppID
和AppSecret
参数。其中AppSecret
需要开启,然后说需要让你自己记住,因为它不会保存在公众号中,否则重置即可。
在微信公众平台的设置与开发
->基本配置
import requests
import jsonAPPID = "你的APPID"
APPSECRET = "你的APPSECRET"
url = f"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={APPID}&secret={APPSECRET}"response = requests.get(url)
print(response.json())
运行这个代码后,我猜你的结果为
{'errcode': 40164, 'errmsg': 'invalid ip 你的ip ipv6 ::ffff:你的ip, not in whitelist rid: 663b9ca2-18a1a0bf-04e2780c'}
也就是这样
查看一下返回码是40164,对应的就是ip不在白名单里面。
此时,你需要去将你的IP地址设置白名单,刚刚运行的代码中,返回结果中已经有你的具体ip地址了,因此不需要ip工具去具体查询。
因此在这里配置一下你的ip,然后重新运行一下代码,就能出现你的access_token
结果如下:
注意事项
-
从这里可以看出,这个参数
grant_type
好像不需要改变值。
-
这个access_token是有上限的,每天2000次,不过还是够用的。
最后,封装一下的代码
import requests
import json# APPID = "你的APPID"
# APPSECRET = "你的APPSECRET"
def get_access_token():# 构造请求的URLurl = f"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={APPID}&secret={APPSECRET}"response = requests.get(url)access_token = response.json()["access_token"]return access_token