微信公众平台技术文档
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432
# 注意,最好以python3 运行,中文字符集就不用转码了。

使用的模块
import requests
import json

#Appid = 'wxa8XXXXXXXXX'
#Secret = 'fba077XXXXXXXXX'

以上:Appid,Secret是你开通微信公众号内部开发-基本配置里提取的值。

# 获取access_token,这个是登录微信的先期条件

url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s' % (Appid,Secret)
# get请求访问
r = requests.get(url)
# 由于返回的是json格式,使用.text打印内容后loads为字典格式
d = json.loads(r.text)
# 这样就可以打印出access_token串
print(d['access_token'])

打印所有关注者的openID以及详细信息

#公众号内每个关注人都会有一个唯一的身份标识:openID,以下URL可以获取当前公众号的所有关注者的openID
#user_url = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=%s' % (d['access_token'])
s = requests.post(user_url)
s1 = json.loads(s.text)
这里就会以字典嵌套字典的形式打印此公众号内所有人的openID,
通过以下方法来获取每个关注者的详细信息
#for line in s1['data']['openid']:
# 以下是获取方法
# mess = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=%s&openid=%s&lang=zh_CN' % (d['access_token'],line)
# m = requests.get(mess)
# m1 = json.loads(m.text)
# print(m1)

消息群发和单独发送代码:

#群发消息的url
#user_url = 'https://api.weixin.qq.com/cgi-bin/message/mass/sendall?access_token=%s' % (d['access_token'])
#单独发消息url
user_url = 'https://api.weixin.qq.com/cgi-bin/message/mass/send?access_token=%s' % (d['access_token']) # 群发消息的值如下:
#value = {
# "filter":{
# "is_to_all":False, # True表示群发,False不群发
# "tag_id":0 # 如群发,这里可以不写,否则,这个标识群发的组ID
# },
# "text":{
# "content":"TEST" # 群发内容
# },
# "msgtype":"text" # 群发文本
#} # 单独发消息的值如下:
value = {
"touser":[
"oYnK8vnSHJoKIzjO3ChsCqqO9ym8", # 关注者的openID,至少2个
"oYnK8vgpMLt3VxKFlfcJxsNcWL0A"
],
"msgtype": "text",
"text": { "content": "WX mess api dev."}
} #以下是统一写法
# URL只能以字符串形式提交,所以这里要转换为字符串
v = json.dumps(value)
# 发起post请求,提交值
s = requests.post(user_url,v)
# 获取发送后的结果返回,如果为0表示成功
s1 = json.loads(s.text)
print(s1)

python之-微信开发学习的更多相关文章

  1. python全栈开发学习_内容目录及链接

    python全栈开发学习_day1_计算机五大组成部分及操作系统 python全栈开发学习_day2_语言种类及变量 python全栈开发_day3_数据类型,输入输出及运算符 python全栈开发_ ...

  2. python全栈开发学习_day2_语言种类及变量

    一.编程语言的分类及python相对其他语言的优势 1)三大语言种类及细分 1.机器语言(低级语言):直接用计算能够理解的二进制进行编写,直接控制计算机硬件. 优点:执行效率高. 缺点:开发效率低,跨 ...

  3. 微信开发学习日记(七):开源微商城wemall

    最近嘛,不是在调研PHP和微信的行情么. 发现,微商城是非常火爆的一个领域,既然业务有搞头,那么技术这一块也有很多选择. 网上发现了wemall这个开源的PHP实现的微商城. 下载了开源版本,PHP后 ...

  4. 微信开发学习日记(六):weiphp框架

    最近重点在看weiphp这个开源的第三方微信公众平台框架. 在网上找微信资料,找到了这个.很早之前,就初步学习了Thinkphp和Onethink2个开源框架,当看到weiphp是用这2个框架开发的时 ...

  5. python全栈开发学习_day1_计算机五大组成部分及操作系统

    一.计算机五大组成部分: 1)五大组成: 1.控制器(指挥系统,用于控制其他计算机硬件的工作) 2.运算器(用于数学运算及逻辑运算) 3.存储器(寄存器,高速缓存,内存,磁盘(机械,固态),磁带) 4 ...

  6. html5+css3 微信开发-学习实例

    例子1.控制数据只显示两行并且最后使用省略号 样式如下: .ControlDataRows{ overflow : hidden; text-overflow: ellipsis; display: ...

  7. 微信开发学习日记(八):7步看懂weiphp插件机制,核心目标是响应微信请求

    又经过了几个小时的梳理.回顾,截至目前,终于对weiphp这个框架的机制搞明白了些.想要完全明白,自然还需要大把的时间.第1步:   配置微信公众号,http://weiphp.jiutianniao ...

  8. python itchat 微信开发

    使用itchat可以简单操作微信,进行好友和群消息的发送 安装: pip install itchat 使用: import itchat, time # 登录 itchat.auto_login(h ...

  9. 微信开发学习日记(五):weiphp开源框架的bug,公众号权限编辑问题

    最近在研究weiphp,总体感觉还行,bug据说还挺多. 这不,我就遇到一个比较严重影响使用的.感觉不太应该出现这么严重的bug啊. weiphp的微信公众号等级,权限增加和编辑bug,看不到权限列表 ...

随机推荐

  1. win10x64下的redis安装与使用

    先引用百度百科的一段话吧,具体可以到百科查看吧. Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年 ...

  2. JavaSE-27 JDBC

    学习要点 JDBC 查询数据 添加数据 修改数据 删除数据 JDBC 1  JDBC的定义 JDBC是Java数据库连接技术的简称,提供连接和操作各种常用数据库的能力. 2  JDBC工作原理 3  ...

  3. 普通用户切换到root用户

    普通用户切换到root用户首先按组合键 CTRL+ALT+T 进入终端界面,一般终端界面默认为普通用户权限模式,如何从普通用户进入root用户首先重置root密码输入 sudo passwd root ...

  4. linux(Ubuntu/Centos) iproute 路由IP地址等命令集合,查看端口链接

    原 linux(Ubuntu/Centos) iproute 路由IP地址等命令集合,查看端口链接 2017年03月20日 16:55:57 风来了- 阅读数:2291 标签: centoslinux ...

  5. TWaver可视化编辑器的前世今生(二)3D编辑器

    接着昨天的继续说哈. 作为一款高效.轻量.自带编辑功能小组件,TWaver Java在电信网管界一炮而红,在各大运营商的OSS,BSS,NMS系统中随处可见. 采用了TWaver图形组件的上海世博会监 ...

  6. 客户端和服务器最多能发送和接收多少TCP连接数?

    1. 对于服务器,每一个tcp连接都要占一个文件描述符,一旦这个文件描述符使用完了,就会返回错误. 我们知道操作系统上端口号1024以下是系统保留的,从1024-65535是用户使用的.由于每个TCP ...

  7. 每日命令:(14)tune2fs

    tune2fs简介 tune2fs是调整和查看ext2/ext3文件系统的文件系统参数,Windows下面如果出现意外断电死机情况,下次开机一般都会出现系统自检.Linux系统下面也有文件系统自检,而 ...

  8. Windows Server定时执行bat

    大家应该知道是在window服务器下使用bat批处理脚本文件,如果是Linux操作系统则是使用xshell脚本文件.由于自己是在做项目的时候对于文件系统中的日志进行定期删除对bat和xshell进行简 ...

  9. Servlet+JSP教程之:第一个Web程序

    我们知道当浏览器发送请求给服务器后,服务器会调用并执行对应的逻辑代码进行请求处理.逻辑代 码是由程序员自己编写然后放进服务器进行运行,其实就是Servlet程序. 第一个Web程序: 开发工具: My ...

  10. 剑指Offer(书):用两个栈实现队列

    题目:用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 分析:入栈时只入栈1,出栈为栈2:若栈2不为空,直接出栈:否则,将栈1中的值依次入栈2,之后栈2出栈 Sta ...