Python | 1 行代码,实现微信消息发送

news/2025/3/5 12:18:50/

640?wx_fmt=png

还是接之前「食行生鲜」签到的问题,之前我们讲到,将签到结果通过短信发送到手机,但是我发现 twilio 有些不稳定,为了防止漏签,我在服务器上设置了两次定时任务,通常情况下第一个收不到短信,第二个才会收到。

看到最近好多大神写操作微信的文章,于是,我又想,是不是可以将消息发送到微信上?

微信发送消息有如下几个思路:

  1. itchat 模块

  2. 使用个人公众号

  3. 使用其他公众号封装好的发送消息的功能;

1

itchat

大部分人操作个人微信都是使用这个模块。

itchat 是一个开源的微信个人接口,它可以模拟网页端的微信登陆,从而用 Python 脚本或命令行模式来使用个人微信号,达到推送各种通知到微信上的目的。

项目主页:https://github.com/littlecodersh/ItChat

其实是基于网页版微信,通过 HTTP 交互来实现微信的一些操作,被封的风险其实在于,当检测到账号异常时,账号的网页版登录权限会被腾讯禁掉,这种情况下 itchat 就不好使了。另外,据说新申请的账号直接没有网页版登录权限了。

itchat 的使用已经有其他很多大神讲了,网上也有很多教程,这里我们不再赘述,有兴趣的自行 Google,也可以后台找我,一起来研究下~

640
一起来

2

个人公众号接口

微信提供了丰富的公众号接口,可以实现消息收发、关注用户信息获取等等。

BUT!大部分接口(包括发送消息接口)只开放给认证用户,而个人号又无法认证,所以这条路断了!

640
接口权限很多限制

640
微信个人无法认证

据说以前个人是可以认证的,反正权限的口子越来越小了。

640

可以先哭一会吗

3

别人家的公众号接口

正所谓「它山之石,可以攻玉」,此处不留爷,爷就去他处!今天的主角登场!

还好我们找到了提供收发消息功能的公众号 API,我们只要集成他们的接口即可。

它就是「Server酱」!

Server 酱                                                                           

Server 酱,英文名字 ServerChan,地址:http://sc.ftqq.com

使用方法:

  1. 登入:用 GitHub 账号登入网站,就能获得一个 SCKEY(在「发送消息」页面);

  2. 绑定:点击「微信推送」,扫码关注同时即可完成绑定;

  3. 发消息:往 http://sc.ftqq.com/SCKEY.send 发 GET 请求,就可以在微信里收到消息啦;

来个示意图:

640
Server 酱消息流程

代码示例:

 

微信端效果:

640

ServerChan 通知

是不是很简单!1 行代码就搞定了微信消息推送,再也不用其他任何复杂的步骤!

另外,显示发现发件人是Server酱,另外点进去有推广,毕竟是免费的接口,还要啥自行车!

还有就是发送消息是有一些限制的:

每人每天发送上限 500 条,相同内容 5 分钟内不能重复发送,不同内容一分钟只能发送 30 条。主要是防止程序出错的情况。

对于我这种需求肯定够了。

PushBear

ServerChan 只能推送到一个微信上,若果想一对多发送信息,并且向自定义发件人,那么可以使用 PushBear。

PushBear 地址:https://pushbear.ftqq.com

  1. 无需注册,直接扫码登入;

  2. 创建消息通道,获得订阅二维码;

  3. 通过 API 向关注了该二维码的用户推送消息;

PushBear 可以自定义发件人信息,通过微信登录后,创建一个通道,会生成一个 sendkey 和一个订阅二维码, 可以通过「订阅消息API」发送微信给所有扫描过此二维码的人。

640
通道设置

代码示例:

微信端效果:

640
PushBear 通知

发现发件人是我们自己设置的「不正经程序员」了!

使用限制:

推送消息存储 72 小时、5 分钟内不可发布重复消息、普通用户每天 1000 条上限、请勿用于发送广告和有害信息。

综上,若要完成签到成功后的通知,我们只要使用 ServerChan 或者 PushBear 的接口封装成发送消息的函数即可!

食行生鲜签到系列也可以到此结束了,回复【食行生鲜】可以获取最终代码。

4

总结

也许还有其他微信的使用方法,但是 ServerChan 是我找到的最简单的一个了,1 行代码搞定,简单高效,很 pythonic

当然,作为个人发送一些通知 ServerChan 是绰绰有余的,但是,若是企业级的应用还是用自己的微信订阅号来开发接口吧~


http://www.ppmy.cn/news/713250.html

相关文章

Python程序员的浪漫-实现每天定时给Ta推送微信公众号消息提醒(超详细教程)

前段阵子,小🍠平台刷到热门视频,程序员男朋友给她实现了每天定时推送消息给她,其中内容包含当地的天气情况、在一起多少天了,离她过生日还有多少天等信息,她开心不得于是发了小🍠平台觉得很浪漫…

php微信公众号发送多条消息模板,整合ThinkPHP功能系列之微信公众号模板消息发送...

模板消息还是在商城类的微信项目中使用比较多,模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如绑定手机号通知,商品购买成功通知等,不支持广告等营销类消息以及其它所有可能对用户造…

个人微信开发api文档

个人微信开发api文档 个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口 微信开发sdk服务端调用接口 1、基础消息类型 1、客户端发送的心跳包 HeartBeatReq 1001; 2、消息接收确认回复(接收或拒绝接收) MsgReceivedAck…

钉钉如何群里定时发送文件_简单好用的钉钉群消息助手

点击上方"IT牧场",选择"设为星标" 技术干货每日送达! 我们常常会遇到向钉钉群中发送消息的需求,所以我开源了一个钉钉群消息助手。 瓦力 瓦力是一个轻量级的钉钉群消息发送助手,通过瓦力你只需要配置一个发送消息的模板(支持多个地址,且可以在运行时动…

python 发送微信语音消息_全网最全的Windows下Anaconda2 / Anaconda3里Python语言实现定时发送微信消息给好友或群里(图文详解)...

不多说,直接上干货! 缘由: (1)最近看到情侣零点送祝福,感觉还是很浪漫的事情,相信有很多人熬夜为了给爱的人送上零点祝福,但是有时等着等着就睡着了或者时间并不是卡的那么准就有点强迫症了,这是也许程序会解决我们的问题。 (2)如果你女朋友需要天天给她微信发“晚安”,…

用python实现微信定时发文

-如果你女朋友需要天天给她微信发“晚安”,你一般怎么做呢? -每天用手机敲出来 -忘记了怎么办? -设个闹钟 -哥不扶墙,就服你 作为程序员哥哥,你如果再怎么low,那就有点愧对你的身份了。一想&#xff0…

使用树莓派定时给微信群发消息

需求强烈 单位领导要求在微信群天天定时汇报个人情况,此处个人情况内容是固定的(这个很重要)。春节过年,哪能天天记着去发微信,而且心理惦记个事也是很难受的,因此决定看看能不能开发程序解决!…

java调用个人微信api接口实现收发消息发朋友圈

个人微信api接口,java调用个人微信api接口实现收发消息发朋友圈 1、微信好友收发消息 /** * 给微信好友发消息 * author wechatno:tangjinjinwx * blog http://www.wlkankan.cn */ Async public void handleMsg(ChannelHandle…