网站首页 > 技术文章 正文
背景说明
腾讯提供了一个企业微信,主要是给企业来使用,可以进行办公以及可以扩展企业的一些其他服务。企业微信不是只有企业可以注册,个人也可以注册,只不过个人注册后无法认证,可能会有一些企业服务无法使用,我们这里只是使用其发送消息服务,所以基本上够用。
我们基于微信企业号编写一套接口,用于来给自己微信发送消息,可以应用于监控等场景,毕竟对于个人而言购买短信服务还是需要一笔支出,这种情况可以利用微信的服务免费满足自己应用。
搭建平台
好吧,下面就开始言归正传,基本上2部分就可以搭建这个微信消息发送平台
创建企业微信
进入企业微信地址[
work.weixin.qq.com/wework_admin/register_wx]创建企业微信
- 注册企业微信
- 登录企业微信
- 创建应用
上图中的AgentID和Secret是我们发送微信时需要的数据
- 邀请用户
可以发送消息给指定的一个或多个用户,也可以是部分,通过企业微信的部门等管理即可,所以可以邀请其他用户加入到企业
我们实际使用发送的小的是上图中的账号,每个用户可以有一次编辑的机会
微信企业ID,我们在配置时也会使用的到
- 修改配置
只有这样的话,是没有办法从我们个人微信中展示出我的企业的,需要我们通过扫码才能从个人微信中展示出来。
部署服务
源码
关注微信公众号:战渣渣
回复关键字 “企业微信” 获取源码
构建原理
此代码的目的是基于微信提供的企业号,搭建一个实时消息推送平台。
其基本原理:
- 注册一个微信企业号(非认证用户,微信可提供200个用户使用)
- 使用者关注企业号,并加入企业微信
- 微信企业号中创建应用
- 基于Flask构建一个api平台,并接入微信企业平台,进行消息推送(也可以做其他管理,这里不做延展,只针对实时消息推送)
- 基于Flask提供的API完成实时消息的推送
部署
- virtualenv部署
1. virtualenv -p python3.6 venv 2. . venv/bin/activate 3. pip install -r requirements.txt 4. gunicorn -c etc/gunicorn.py manage:app
- docker部署
这里没有提供docker镜像,可直接使用Dockerfile从本地生成镜像即可
1.生成镜像
# 在当前目录执行以下命令 docker build -t wxqy_service:latest .
2.启动服务
生成镜像之后启动镜像即可
# ACCESS_TOKEN 简单的鉴权,支持多个,逗号分隔,调用接口时在headers中增加一个Key= AccessToken docker run -p 10050:5000 -i -t -d \ --env WX_CORPID=微信企业号ID \ --env DEFAULT_WX_AGENT_ID=发送消息应用ID \ --env WX_SECRET=发送消息应用secret \ --env ACCESS_TOKEN="mSnbqTHqfIG6fIq6,zFIxAxU4wtYKpMzd" \ --name wxqy_service wxqy_service
使用
curl -i -X POST \ -H 'Content-Type: application/json' \ -H 'AccessToken: mSnbqTHqfIG6fIq6' \ --url http://localhost:10050/wechat/send \ -d '{"msg_type": "text","send_data": {"text": {"content": "测试消息"}},"to_users": ["要发送的用户"]}'
猜你喜欢
- 2025-06-30 linux下远程管理命令-关机与重启(linux远程主机关闭连接)
- 2025-06-30 一款构建Python命令行应用的开源库
- 2025-06-30 如何阻止输入 Python 命令时打开 Microsoft 商店?
- 2025-06-30 Python中subprocess模块:轻松调用外部程序与命令
- 2025-06-30 Python 的退出命令:quit()、exit()、sys.exit() 和 os._exit()
- 2025-06-30 Argparse:一个具体案例教会你python命令行参数解析
- 2025-06-30 实现Python命令行操作的基本步骤(python在命令行下编写代码)
- 2025-06-30 Java & Python 康威生命游戏 - 命令行版
- 2025-06-30 分享7个 Python CLI 库,助您快速构建高效命令行应用程序
- 2025-06-30 告别命令行!用Gooey几行代码为Python脚本变身华丽GUI
- 272℃Python短文,Python中的嵌套条件语句(六)
- 271℃python笔记:for循环嵌套。end=""的作用,图形打印
- 269℃PythonNet:实现Python与.Net代码相互调用!
- 264℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 264℃Python实现字符串小写转大写并写入文件
- 123℃原来2025是完美的平方年,一起探索六种平方的算吧
- 104℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 99℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
-
- 【全200集】最完整的Python教程,7天零基础入门Python,动画
- Manim,超酷python库-创建精美数学动画
- 清华大学教授带你看动画,学python,零基础入门,初识python
- PYTHON做的白云动画(python 动画)
- 最完整的Python动画教程,7天零基础入门Python
- Python 获取公司前十大股东数据(python tushare获取股票数据)
- 10个用于Web开发的最好 Python 框架
- wxPython和PyQt谁才是最赞的Python GUI库
- 如何利用企业微信做一个免费发送微信消息的站点
- linux下远程管理命令-关机与重启(linux远程主机关闭连接)
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)