1.这里是记录下怎么是实现用爬虫爬取天气信息再将信息以短信的方式发送给指定的人。
首先爬取天气信息,这里爬取深圳的天气,这里如果对爬虫不是很了解可以看下https://www.cnblogs.com/zhaof/p/6930955.html
import requests
from lxml import etree
from bs4 import BeautifulSoup
import datetime
import re
def get_info():
headers = {"User-Agent":
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.80 Safari/537.36"
}
html = requests.get("https://www.tianqi.com/shenzhen/life.html",headers=headers)
html.encoding="utf-8"
soup=BeautifulSoup(html.text,'lxml')
title=soup.find('div',{'class':"tit01"})
h1=title.find('h1')
print(h1.get_text())
title=h1.get_text()
print(soup.select('.lifeindex li')[0].select('b')[0].get_text())
daisan = soup.select('.lifeindex li')[0].select('b')[0].get_text()
daisan1 = soup.select('.lifeindex li')[0].select('p')[0].get_text()
print(daisan1)
zhiwaixian = soup.select('.lifeindex li')[2].select('b')[0].get_text()
print(zhiwaixian)
zhiwaixian1 = soup.select('.lifeindex li')[2].select('p')[0].get_text()
print(zhiwaixian1)
chuanyi = soup.select('.lifeindex li')[5].select('b')[0].get_text()
print(chuanyi)
chuanyi1 = soup.select('.lifeindex li')[5].select('p')[0].get_text()
print(chuanyi1)
travel = soup.select('.lifeindex li')[6].select('b')[0].get_text()
print(travel)
travel1 =soup.select('.lifeindex li')[6].select('p')[0].get_text()
print(travel1)
liangsai = soup.select('.lifeindex li')[7].select('b')[0].get_text()
print(liangsai)
liangsai1 =soup.select('.lifeindex li')[7].select('p')[0].get_text()
print(liangsai1)
#获取当前时间
today=datetime.datetime.now().strftime('%Y/%m/%d')
resmes = title+":"+today+ '\n' + daisan +":"+daisan1+'\n'+zhiwaixian+':'+zhiwaixian1+'\n'+chuanyi+':'+chuanyi1+'\n'+travel+':'+travel1+'\n'+liangsai+":"+liangsai1+'\n'
print(resmes)
return resmes
text = get_info()
print(text)
上面获得的结果是
2安装twilio
pip install twilio
安装好,去该网站注册获得一个电话号码,这样发送短信就是通过这个电话号码发送的,这里要科学上网,具体要求看这位博主的https://blog.youkuaiyun.com/fengfengdiandia/article/details/52719214
发送短信的代码
from twilio.rest import Client
from info import get_info
print(get_info())
text=get_info()
ACCOUNT_SID="twilio的账户名"
AUTH_TOKEN="twilio密码"
client = Client(ACCOUNT_SID,AUTH_TOKEN)
mes1 = client.messages.create(
from_='在twilio获得的电话,这里发送短信就是通过这个发送的',
body=text,
to='目标电话号码,需要在twilio上验证'
)
print(mes1)
最终目标手机获得相应的信息结果就说明成功了。
参考bilibili
http://www.bilibili.com/video/av39346491?share_medium=android&share_source=copy_link&bbid=XY4FB074F357BC18FFBA4E2114AB87AACAC21&ts=1546830382973