Python定时发送天气预报邮件代码实例
Python  /  管理员 发布于 7年前   1630
这篇文章主要介绍了Python定时发送天气预报邮件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
用python爬虫爬到的天气预报,使用smtplib和email模块可以发送到邮箱,使用schedule模块可以定时发送。以下是代码~
#导入模块import requestsfrom bs4 import BeautifulSoupimport smtplibfrom email.mime.text import MIMETextfrom email.header import Headerimport scheduleimport time#输入邮箱发件人、收件人以及邮箱的授权码account = str(input('请输入发件人邮箱地址:'))password = str(input('请输入邮箱授权码:'))receiver = str(input('请输入收件人邮箱地址:'))#建立天气网爬虫,爬取天气信息def weather_spider(): #模拟浏览器: headers={ 'user-agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36' } url='http://www.weather.com.cn/weather/101211001.shtml' #数据获取: res=requests.get(url,headers=headers) res.encoding='utf-8' #数据解析: soup=BeautifulSoup(res.text,'html.parser') #数据提取: tem1= soup.find(class_='tem') weather1= soup.find(class_='wea') tem=tem1.text weather=weather1.text return tem,weather#发送邮件的代码def send_email(tem,weather): global account,password,receiver mailhost='smtp.qq.com' qqmail = smtplib.SMTP() qqmail.connect(mailhost,25) qqmail.login(account,password) content= '衢州的天气是:\n'+tem+weather message = MIMEText(content, 'plain', 'utf-8') subject = '今日天气预报from python' message['Subject'] = Header(subject, 'utf-8') try: qqmail.sendmail(account, receiver, message.as_string()) print ('邮件发送成功') except: print ('邮件发送失败') qqmail.quit()#建立任务def job(): print('开始一次任务') tem,weather = weather_spider() send_email(tem,weather) print('任务完成')#定时发送schedule.every().day.at("7:00").do(job) while True: schedule.run_pending() time.sleep(1)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号