python实实现现定定时时发发送送qq消消息息
这篇文章主要为大家详细介绍了python实现定时发送qq消息,具有一定的参考价值,感兴趣的小伙伴们可以参考
一下
因为生 中老是忘记各种事情,刚好又在学python,便突发奇想通过python实现提醒任务的功能 (尽管TIM有定时功
能),也可定时给好友、群、讨论组发送qq消息。其工作流程是 :访问数据库提取最近计划—— >根据数据内容 (提
醒时间、提醒对象、提醒内容)设置定时任务—— >给特定qq好友发送消息。
1. 软件版本 :
2.安装依赖环境
pymysql安装 :pip install pymysql
qqbot安装 :pip install qqbot
3.数据库操作
数据库操作非常简 ,跟Java类似,自己去菜鸟教程看一下基础语法就好了。
#coding: utf-8
import pymysql #导入pymysql模块
db = pymysql.connect("localhost","root","root","info_db" #数据库链接信息
cursor = db.cursor(
#插入任务
def insertSchedule(schedule :
insertsql = "insert into dutyschedule_tb(worktime,name values(%s,%s "
try:
#这种查询语句可以防止sql注入
cursor.execute(insertsql,(schedule['worktime'],schedule['name']
mit(
except Exception:
db.rollback(
raise Exception
#删除任务
def deleteSchedule( :
deletesql = ""
try:
cursor.execute(deletesql
mit(
except Exception:
db.rollback(
def updateSchedule(user :
updatesql = ""
try:
cursor.execute(updatesql
mit(
except Exception:
db.rollback(
#获取下一个任务
def findScheduleByNewTime( :
selectsql = "SELECT * FROM dutyschedule_tb where NOW( <=
date_format(worktime,'%Y-%m-%d
%H:%i:%S' ORDER BY worktime ASC;"
try:
cursor.execute(selectsql
results = cursor.fetchone(
schedule = {}
schedule['worktime'] = results[1]
schedule['name'] = results[2]
schedule['content '] = results[3]
return schedule
except Exception:
return None
4.配置qqbot登陆信息
也可以不配置,不配置的话就是每次扫码登陆,但这在Linux系统下不好用,我按说明将配置改成了每次将登陆二维
码发到固定qq邮箱。qqbot模块在GitHub上,大家可以去看一下模块说明 :qqbot
配置文件默认在用户目录下的.qqbot tmp/v2.3.conf,linux下类似
{
# QQBot 的配置文件
# 使用 qqbot -u somebody 启动程