微信定时发送天气python3

爬取天气信息,定时发送天气给多人python3

 1 import requests 2 from requests import exceptions 3 from urllib.request import urlopen 4 from bs4 import BeautifulSoup 5 import re 6 from wxpy import * 7 import schedule 8 import time 9 10 11 #bot=Bot(cache_path=True) #登陆网页微信,并保存登陆状态12 bot = Bot(console_qr=2,cache_path="botoo.pkl")#Linux专用,像素二维码13 14 def sendblogmsg(content):15 #搜索自己的好友,注意中文字符前需要+u16 my_friend = bot.friends().search(u王琳杰)[0]17  my_friend.send(content)18 19 my1_friend = bot.friends().search(u浮生若梦)[0]20  my1_friend.send(content)21 22 my_group = bot.groups().search(u聊天机器人测试)[0]23 my_group.send(content) #发送天气预报24 25 26 27 my1_group = bot.groups().search(u测试)[0]28 my1_group.send(content) #发送天气预报29 30 def job():31 resp=urlopen(http://www.weather.com.cn/weather/101010100.shtml)32 soup=BeautifulSoup(resp,html.parser)33 tagToday=soup.find(p,class_="tem") #第一个包含class="tem"的p标签即为存放今天天气数据的标签34 try:35 temperatureHigh=tagToday.span.string #有时候这个最高温度是不显示的,此时利用第二天的最高温度代替。36 except AttributeError as e:37 temperatureHigh=tagToday.find_next(p,class_="tem").span.string #获取第二天的最高温度代替38 39 temperatureLow=tagToday.i.string #获取最低温度40 weather=soup.find(p,class_="wea").string #获取天气41 contents = 北京 + n + 最高温度: + temperatureHigh + n + 最低温度: + temperatureLow + n + 天气: + weather 42 # result3 = ‘最低温度:‘ + temperatureLow43 #print(‘最低温度:‘ + temperatureLow)44 #print(‘最高温度:‘ + temperatureHigh)45 # print(‘天气:‘ + weather)46  sendblogmsg(contents)47 #定时48 schedule.every().day.at("22:45").do(job) #规定每天12:30执行job()函数49 while True:50 schedule.run_pending()#确保schedule一直运行51 time.sleep(1)52 bot.join() #保证上述代码持续运行

 

微信定时发送天气python3

相关文章