python实现QQ定时发送新年祝福信息
作者:Tony_43 发布时间:2023-12-19 08:11:59
前言
今晚就是新年夜啦,为了 刷一波存在感 送出我的祝福,同时让它看起来不像群发消息,我们简单地用三步来实现定制QQ祝福~(保姆级教学 真的很详细)
效果图:
第一步 配置go-cqhttp
简单来说,go-cqhttp就是自己搭建的一个QQ,它可以完成收发消息等功能,并实现操作的自动化
官网地址:go-cqhttp 帮助中心
https://docs.go-cqhttp.org/
下载界面:
我们根据自己的情况选择即可。我这里是win10,选 go-cqhttp_windows_amd64.exe 就好
新建一个文件夹,把.exe放进去,运行后出现系统提示,点击确定,会生成一个.bat。再次运行.bat,会看到以下界面:
选0按下回车,按提示修改.yml文件
我们需要修改的地方有:
文档开头:
改成自己的QQ账号,为了保证安全,建议不填密码,扫码登录
文档结尾:
最后两行的 # ,替换成两个空格(取消注释)
保存后,我们再次运行.bat ,按提示扫码登录,当持续跳出黄字提示信息时,你的go-cqhttp就配置好啦
之后的python程序,都需要在go-cqhttp运行时,与之同时运行!
第二步 获取好友列表
利用go-cqhttp提供的接口,我们可以方便地获取全部好友的备注和QQ号,并保存为json文件。代码如下:
import requests
import json
if __name__ == '__main__':
t = requests.get(url='http://127.0.0.1:5700/get_friend_list')
friends = t.json()
# 利用 get_friend_list 接口获取好友列表
with open("./friends.json", 'w', encoding='utf-8') as json_file:
json.dump(friends, json_file, ensure_ascii=False, indent=4)
# 保存json文件 注意此处 indent=4 可以让json有缩进效果
运行后,在同目录下,我们便得到了friends.json,打开后是这样的:
remark 是好友的备注,我们现在将其稍微修改后作为消息的称呼。(比方说,郄伟东 -> 伟东)
user_id 是好友的QQ号,之后发消息要用到。
如果不希望给一些好友发消息,可以在文件中删掉对应的元素 (一个“ { }, ”之间为一个元素 )
第三步 发送祝福!
这里利用go-cqhttp的发送消息接口,运行下面代码就好啦( .py的同目录下要放进friends.json )
import requests
import json
if __name__ == '__main__':
with open('./friends.json', 'r', encoding='utf8') as f:
Flist = json.load(f)['data']
for i in Flist:
p = i['remark'] # 称呼
q = i['user_id'] # QQ号
requests.get(url='http://127.0.0.1:5700/send_private_msg?user_id={0}&message={1}新年快乐鸭~ 祝你新的一年万事如意!'.format(q, p))
requests.get(url='http://127.0.0.1:5700/send_private_msg?user_id={0}&message=[CQ:face,id={1}][CQ:face,id={2}][CQ:face,id={3}]'.format(q,137,137,137))
运行效果图:(所有json文件中的好友都会同时收到定制消息)
来源:https://blog.csdn.net/Tony_43/article/details/122760140


猜你喜欢
- 这篇文章主要介绍了Python sqlite3查询操作过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,
- 今天小编来和大家聊一下Python当中的altair可视化模块,并且通过调用该模块来绘制一些常见的图表,借助Altair,我们可以将更多的精
- 1、tensorflow(不定长)文本序列读取与解析tensorflow读取csv时需要指定各列的数据类型。但是对于RNN这种接受序列输入的
- 本文实例讲述了python中随机函数random用法。分享给大家供大家参考。具体如下:python中的random模块功能非常强大,可以生成
- 系统只要能从数据库连接池获取到一个数据库连接,就能执行CRUD。可通过数据库连接将待执行SQL发给MySQL。大部分 crud boy只知道
- 在 MySQL 中通常我们使用 limit 来完成页面上的分页功能,但是当数据量达到一个很大的值之后,越往后翻页,接口的响应速度就越慢。本文
- 人工智能是一个很广阔的领域,很多编程语言都可以用于人工智能开发,所以很难说人工智能必须用哪一种语言来开发。选择多也意味着会有优劣之分,并不是
- 以前碰见这种使用场景都是直接order by rand()来处理的,但是效率实在是不敢恭维,所以最近又碰见这种场景,在网上找寻下比较好的解决
- 本文实例为大家分享了python实现knn算法的具体代码,供大家参考,具体内容如下knn算法描述对需要分类的点依次执行以下操作:1.计算已知
- 映射类型操作符(1)标准类型操作符 字典可以和所有的标准
- 本文实例讲述了Python操作Mongodb数据库的方法。分享给大家供大家参考,具体如下:一 导入 pymongofrom pymongo
- PHP number_format() 函数实例格式化数字:<?php echo number_format("100000
- 字典的添加与修改# coding:utf-8if __name__ == '__main__':
- 这里是WMP的版本ClassID,从WMP7后ID就成了clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6
- Python字符串字符串或串(String)是由数字、字母、下划线组成的一串字符。一般记为 :s="a1a2···an"
- 前言django 的 admin 是个非常方便的admin portal,可以根据自己的需要重写.在使用Django自带的admin后台的时
- 以下分享一点我的经验 一般刚开始学SQL的时候,会这样写 SELECT * FROM table ORDER BY id LIMIT 100
- 相信各位phper在日常开发中,会经常遇到需要合并数组的场景。那么,在php中都有哪一些方法可以用来合并数组呢。第一种,使用&ldq
- 超级鹰平台验证码的破解可以有以下方式:简单的数字字母组合可以使用图像识别(python 现成模块),成功率不高使用第三方打码平台(破解验证码
- Python的创始人为荷兰人吉多·范罗苏姆 (Guido van Rossum)。 * 圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞