python定时发送微信消息,python给微信群发消息
翻译
来自wxpyimport *
导入请求
开始日期时间导入日期时间
导入时间
从AP调度程序。调度程序。阻止导入阻止调度程序#计时框架
bot=Bot(cache_path=True)
Tuling=Tuling(API _ key=your API )# robot API
定义发送_天气(位置):
#准备url地址
path= http://API . map . Baidu . com/telematics/v3/weather?location=% sout put=JSON AK=tuegdhcvwi 6 for qnl m0 QM xxy 9n 0 ookoiqcallback=?
url=路径%位置
response=requests.get(url)
result=response.json()
#如果城市不对,根据濮阳发天气
if结果[error]!=0:
Location=濮阳
url=路径%位置
response=requests.get(url)
result=response.json()
Str0=(早上好!这是今天的天气预报!…机器人:PyChatBot\n )
结果=结果[结果]
#取出数据字典
data1=结果[0]
#摧毁这座城市
city=data1[当前城市]
Str1=您的城市:%s\n% city
#取出pm2.5值
pm25=数据1[pm25]
Str2= Pm值:%s\n% pm25
#将字符串转换为整数,否则无法比较大小
如果pm25==“”:
pm25=0
pm25=int(pm25)
#用pm2.5的数值确定污染指数
如果0=pm25 35:
污染=优秀
elif 35=pm25 75:
污染=好
elif 75=pm25 115:
污染=轻度污染
elif 115=pm25 150:
污染=中度污染
elif 150=pm25 250:
污染=重度污染
elif pm25=250:
污染=严重污染
Str3=污染指数:%s\n%污染
结果1=结果[0]
天气数据=结果1[天气数据]
数据=天气数据[0]
temperature_now=data[date]
Str4=当前温度:%s\n%现在温度
wind=data[wind]
Str5=风向:%s\n%风
天气=数据[天气]
Str6=天气:%s\n%天气
Str7=温度:%s\n% data[温度]
message=data1[index]
str 8= Dressing:% s \ n % message[0][ des ]
Str9=我很甜:%s\n% message[2][des]
str 10= Motion:% s \ n % message[3][ des ]
str 11= Ultraviolet:% s \ n % message[4][ des ]
str=str 0 str 1 str 2 str 3 str 4 str 5 str 6 str 7 str 8 str 9 str 10 str 11
返回字符串
#好友列表
我的朋友=[]
我的朋友=机器人朋友()
我的朋友. pop(0)
#发送功能
def发送消息():
#发送给你所有的朋友
对于我的朋友中的朋友:
friend.send(发送天气(朋友.城市))
#成功时通知我。
bot . file _ helper . send(send _ weather(濮阳))
Bot.file_helper.send(发送完成)
#计时器
打印(“星形”)
sched=BlockingScheduler()
sched.add_job(send_message, cron ,月=1-12 ,日=1-31 ,小时=5,分钟=30)
sched.start()
具体操作:
首先导入wxpy,图灵机器人,定时器Apscheduler,定时器定时发群。
具体pip操作建议百度。
用百度的一个天气界面获取json数据。
主要观点:
1.从wxpy获取朋友列表
2.创建计时器
3.定时器触发功能
4.函数执行,遍历好友列表
5.朋友对象执行参数函数,参数是朋友城市。
6.在函数中请求百度天气接口,获取该好友对应的天气数据,分析处理数据,发送天气信息,完成该对象的发送。
7.遍历结束,发送结束。
缺陷:打包成exe文件后启动失败,因为定时器找不到触发器。要解决这个问题,需要查看Apscheduler的相关信息。
解决方法:换一个定时器。
在编译器上正常执行。
打包成exe后,可以很方便地发送给他人使用。扫描登录后,效果图中的天气预报会在每天早上5: 30自动发送给所有好友。
如果你不明白,请随时提问。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。