python实现QQ定时发送新年祝福信息
目录
- 前言
- 第一步 配置go-cqhttp
- 第二步 获取好友列表
- 第三步 发送祝福!
- 总结
前言
今晚就是新年夜啦,为了 刷一波存在感 送出我的祝福,同时让它看起来不像群发消息,我们简单地用三步来实现定制QQ祝福~(保姆级教学 真的很详细)
效果图:
第一步 配置go-cqhttp
简单来说,go-cqhttp就是自己搭建的一个QQ,它可以完成收发消息等功能,并实现操作的自动化
官网地址:go-cqhttp 帮助中心
下载界面:
我们根据自己的情况选择即可。我这里是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文件中的好友都会同时收到定制消息)
总结
到此这篇关于python实现QQ定时发送新年祝福信息的文章就介绍到这了,更多相关python QQ定时发送内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!