Git Product home page Git Product logo

wechatpush's Introduction

WechatPush

基于 企业微信 API 的微信消息推送, 无需自建服务器的 Python 库解决方案.

前言

很多时候编写程序时希望能将程序的运行结果实时告知开发者, 需要点对点的推送服务.

Telegram Bot 国内使用不便, 现有的微信推送大多需要使用第三方服务器, 接口调用有限制.

而此 Python 库有以下优点:

  • 无需自建服务器, 不使用第三方服务器, 无其他费用
  • 第一次需要配置(只需要个人微信), 之后可以直接调用, 简单方便
  • 无需安装企业微信客户端, 可以直接在微信接收推送
  • 调用次数充足, 限制少
  • 可以推送 文本, 超链接, 图片, 文件, Markdown 多种格式

配置(本步内容参考了 WecomChan 的相关文档)

配置过程中, 你需要记录下 corp_id secret 以及 agent_id 三个值.

  • 第一步,注册企业

    用电脑打开企业微信官网,注册一个企业

  • 第二步,创建应用

    注册成功后,点「管理企业」进入管理界面,选择「应用管理」 → 「自建」 → 「创建应用」

    img

    应用名称可以随意填入,应用logo自己上传一张图片,可见范围选择公司名。

    img

    创建完成后进入应用详情页,可以得到 agent_id,应用Secret( secret )。

    注意:secret推送到手机端时,只能在企业微信客户端中查看。

    img

    2022年6月20日之后创建的应用,需要额外配置可信IP。

    在「应用详情页」的最下方,开发者接口分类中,找到「企业可信IP」,点击「配置」,并填入服务器IP即可。

    注意,如果你使用云函数等公用IP的云服务,可能需要在(云函数或其他服务的)设置界面中打开「固定公网IP」来获得一个独立的IP。否则有可能报「第三方服务IP」错误。

  • 第三步,获取企业ID

    进入「我的企业」页面,拉到最下边,可以看到企业ID(corp_id)③,复制并填到上方。

    推送UID直接填 @all ,推送给公司全员。

  • 第四步,推送消息到微信

    进入「我的企业」 → 「微信插件」,拉到下边扫描二维码,关注以后即可收到推送的消息。

    img

    PS:如果出现接口请求正常,企业微信接受消息正常,个人微信无法收到消息的情况:

    进入「我的企业」 → 「微信插件」,拉到最下方,勾选 “允许成员在微信插件中接收和回复聊天消息” img

    在企业微信客户端 「我」 → 「设置」 → 「新消息通知」中关闭 “仅在企业微信中接受消息” 限制条件 img

安装

pip3 install wechat_push

示例

>>> from wechat_push import WechatPush
>>> push = WechatPush("你的corp_id", "你的secret", "你的agent_id")
>>> push.send_text('Hello!\n文本支持换行\n<a href="https://github.com">文本支持超链接</a>')
{'errcode': 0, 'errmsg': 'ok', 'msgid': 'xxx'}
>>> push.send_markdown("**Markdown here!**")
{'errcode': 0, 'errmsg': 'ok', 'msgid': 'xxx'}
>>> push.send_file(open("test.txt", "rb"), "微信中显示的文件名称")
{'errcode': 0, 'errmsg': 'ok', 'msgid': 'xxx'}
>>> push.send_image(open("test.png", "rb"))
{'errcode': 0, 'errmsg': 'ok', 'msgid': 'xxx'}

wechatpush's People

Contributors

lyc8503 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

wechatpush's Issues

无法推送

您好,已经按照readme的说明去配置了,然后调用以下代码后,无法在微信上收到消息:

push = WechatPush(corp_id, secret, agent_id)
push.send_text('Hello!\n文本支持换行\n文本支持超链接')

是否需要“配置企业可信IP”?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.