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

news/2025/3/5 5:27:06/

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

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

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

  1. itchat 模块
  2. 使用个人公众号
  3. 使用其他公众号封装好的发送消息的功能;

itchat

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

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

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

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

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

一起来

个人公众号接口

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

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

接口权限

微信认证

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

可以先哭一会吗

别人家的公众号

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

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

它就是「Server酱」!

Server 酱

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

使用方法:

  1. 登入:用 GitHub 账号登入网站,就能获得一个 SCKEY(在「发送消息」页面);
  2. 绑定:点击「微信推送」,扫码关注同时即可完成绑定;
  3. 发消息:往 http://sc.ftqq.com/SCKEY.send 发 GET 请求,就可以在微信里收到消息啦;

来个示意图:

Server 酱消息流程

代码示例:

>>> import requests
>>> requests.get("https://sc.ftqq.com/your-SCKEY.send?text={}&desp={}".format('测试标题','哈哈'))

微信端效果:

ServerChan 通知

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

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

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

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

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

PushBear

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

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

  1. 无需注册,直接扫码登入;
  2. 创建消息通道,获得订阅二维码;
  3. 通过 API 向关注了该二维码的用户推送消息;

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

通道设置

代码示例:

import requests
requests.get("https://pushbear.ftqq.com/sub?sendkey=your-sendkey&text={}&desp={}".format('pushbear', '哈哈'))

微信端效果:

PushBear 通知

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

使用限制:

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

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

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

总结

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

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


如果觉得有用,欢迎关注我的微信,一起学习,共同进步,不定期推出赠书活动~

你的关注是对我最大的鼓励!

最近搜集到慕课网视频,视频内容涵盖 Python、Java、PHP、前端、小程序、算法、架构、数据库等等!关注本公众号,后台回复「慕课网」即可获取下载地址。


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

相关文章

通过GitHub Actions给微信公众测试号和钉钉群定时推送消息(Python)

通过GitHub Actions给微信公众测试号和钉钉群定时推送消息(Python) https://github.com/QInzhengk/Math-Model-and-Machine-Learning简介GitHub Actions 术语workflow 文件1.name2.on3.jobs 几个完整的 workflow 文件的范例一二 实例1、通过GitHub Actio…

通过java程序,给微信发送消息

每天或者每月定时给自己的微信发送消息实现方式:采用飞鸽快信,每月总送1000条消息1.申请接口,(为避免广告嫌疑,请自行百度飞鸽快信)2.代码测试 使用的jar包为 httpclient-4.3.6 import java.util.ArrayList…

(19) 树莓派发送微信消息

API https://itchat.readthedocs.io/zh/latest/api/ 教程 https://www.yahboom.com/build.html?id=1999&cid=257 项目地址 https://github.com/revotu/ItChat 更多使用 https://www.cnblogs.com/jiaoyu121/p/6944398.html 重要文件传输 : 视频 图片 语音 文字 https:…

个人微信淘客机器人api开发

淘宝客微信机器人API接口,淘客机器人API,微信机器人API 微信二次开发的完整API功能 首先了解一下微信机器人API是什么? E云API 是一个能将个人微信各项功能提取成可供开发人员调用的一套私有API接口,比如微信的收发消息,发朋友圈,群聊&…

我在CSDN的第一篇文章——python+阿里云linux服务器每天定时发送高考投档状态到你手机微信(下)

文章目录 挂在阿里云服务器上,每天发送一次信息一、 注册阿里云账号,购买(白嫖一个月)阿里云服务器二、连接云服务器三、将项目部署到云服务器上去四、更改python文件某些属性使其能在linux上运行五、在云服务器上Linux crontab 命…

个人微信号API接口,微信机器人

前段时间公司需求开发一套自定义的微信机器人,需求是可以自己批量添加好友、批量打标签等进行好友管理,社群管理需要自动聊天,自动回复,发朋友圈,转发语音,以及定时群发等,还可以提取聊天内容&a…

程序员直男也有的浪漫,快来给朋友制作一款定时微信推送服务吧

微信测试公众号推送服务 1、完成效果😃 ❓:为什么先说完成的效果呢? 🙋:就像射箭🏹找不到箭靶🧿,那每天拉弓的意义在哪呢? 先来了解一下本次练习要实现的效果、结果。…

python--实现微信自动回复机器人和定时发送每日一句与天气预报

目录 关于wxpy安装wxpy利用机器人实现微信自动回复 获取金山词霸每日一句获取天气预报数据定时发送每日一句与天气预报结束 关于wxpy wxpy其实是通过微信网页版的api实现对微信的一些相应操作,所支持的功能也局限于微信网页版,有些微信账号可能登录不了…