日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python 简单爬虫获取气象数据发送气象定时报-预报预警信息及时推送及阿里云短信群发接口...

發布時間:2023/12/18 python 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 简单爬虫获取气象数据发送气象定时报-预报预警信息及时推送及阿里云短信群发接口... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
!/usr/bin/python #encoding=utf-8 #Author:Ruiy# #python-bs4 #ilio #///import sys import datetime nowTime="\"" + datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + "\"" #print nowTime addr="\"長沙\""if sys.getdefaultencoding() != 'utf-8':reload(sys) sys.setdefaultencoding('utf-8')#apt-get install python-bs4 for Ubuntufrom urllib import urlopen from bs4 import BeautifulSoup import reurl='http://www.weather.com.cn/weather/101250101.shtml' html=urlopen(url).read() soup=BeautifulSoup(html,'html.parser',from_encoding='utf-8')#print soup.prettify() #print soup.title#tagAfterTomorrow=soup.find('li',class_="sky skyid lv3") #print tagAfterTomorrow#weather=tagAfterTomorrow.find_next('p',class_="wea").string #print weather#temperatureHigh=tagAfterTomorrow.find_next('span').string #print temperatureHigh#temperatureLow=tagAfterTomorrow.find_next('i').string #print temperatureLow#windDirection=tagAfterTomorrow.find_next('span',class_='SE').string #print windDirection#res_data=soup.findALL('script') #print res_data res_data=soup.find('ul','t clearfix') #print res_data#print twoDays#h1s=soup.find_all('h1') #for h1 in h1s: # for li in h1.children: # print h1.string li_tag=res_data.findAll('li') #print li_tag #print 'bug/'#for i in li_tag: # print i#print "/ruiy"#數據回值 for tag in li_tag:patchTwoDays=tag.find('h1').stringif '后天' in patchTwoDays:TC=tag.find('h1').string #時間T="\"" + TC + "\""print TWC=tag.find('p','wea').string #天氣W="\"" + WC + "\""print Wtry:HC=tag.find('p','tem').find('span').string #最高溫H="\"" + HC + "\""print HLC=tag.find('p','tem').find('i').string #最低溫度L="\"" + LC + "\""print Lexcept:#print("沒有高溫低溫數據")passFXC=tag.find('p','win').find('i').string #風向級數FX="\"" + FXC + "\""print FX#print "patch"#print(tag.find('h1').string) #時間#print(tag.find('p','wea').string) #天氣#try:# print(tag.find('p','tem').find('span').string) #最高溫# print(tag.find('p','tem').find('i').string) #最低溫#except:# print("沒有高溫低溫數據")# pass#print(tag.find('p','win').find('i').string) #風向級數#print('_______________ 分割線 ____________________')#else:# print 'no patch'#Email mess interface #import smtplib #from email.mime.text import MIMEText #from email.utils import formataddr #import time#_user="5160558@qq.com" #_pwd="nphqgzgcbce" #_to="1507@139.com"#receives=[ # "5160@qq.com", # "1505567****@139.com", # "374093@qq.com", #]#for i in receives: # msg=MIMEText("te") # msg["Subject"]="dot't p" # msg["Form"]=_user # msg["To"]=i # try: # s = smtplib.SMTP_SSL("smtp.qq.com", 465) # s.login(_user, _pwd) # s.sendmail(_user, i, msg.as_string()) # s.quit() # print("Success!") # except smtplib.SMTPException,e: # print ("Falied,%s" %e) #阿里短信接口 import sys from aliyunsdkdysmsapi.request.v20170525 import SendSmsRequest from aliyunsdkdysmsapi.request.v20170525 import QuerySendDetailsRequest from aliyunsdkcore.client import AcsClient import uuid from aliyunsdkcore.profile import region_provider from aliyunsdkcore.http import method_type as MT from aliyunsdkcore.http import format_type as FT import const""" 短信業務調用接口""" try:reload(sys)sys.setdefaultencoding('utf8') except NameError:pass except Exception as err:raise err# 注意:不要更改 REGION = "cn-hangzhou" PRODUCT_NAME = "Dysmsapi" DOMAIN = "dysmsapi.aliyuncs.com"acs_client = AcsClient(const.ACCESS_KEY_ID, const.ACCESS_KEY_SECRET, REGION) region_provider.add_endpoint(PRODUCT_NAME, REGION, DOMAIN)def send_sms(business_id, phone_numbers, sign_name, template_code, template_param=None):smsRequest = SendSmsRequest.SendSmsRequest()# 申請的短信模板編碼,必填 smsRequest.set_TemplateCode(template_code)# 短信模板變量參數if template_param is not None:smsRequest.set_TemplateParam(template_param)# 設置業務請求流水號,必填。 smsRequest.set_OutId(business_id)# 短信簽名 smsRequest.set_SignName(sign_name)# 數據提交方式# smsRequest.set_method(MT.POST)# 數據提交格式# smsRequest.set_accept_format(FT.JSON)# 短信發送的號碼列表,必填。 smsRequest.set_PhoneNumbers(phone_numbers)# 調用短信發送接口,返回jsonsmsResponse = acs_client.do_action_with_exception(smsRequest)# TODO 業務處理return smsResponseif __name__ == '__main__':__business_id = uuid.uuid1()#plist=['13121172','15198367']pce=['1312272***','15055367****','15316']#print(__business_id)#params = "{\"code\":\"12345\",\"product\":\"云通信\"}"#params = {\"nowTime\":nowTime,\"addr\":\"長沙\",\"T\":\"12345\",\"W\":\"12345\",\"H\":\"12345\",\"L\":\"12345\",\"FX\":\"12345\"}"#params = {"nowTime":nowTime,"addr":addr,"T":T,"W":W,"H":H,"L":L,"FX":FX}#params = "{\"nowTime\":%s,\"addr\":\"云通信\",\"T\":\"12345\",\"W\":\"12345\",\"H\":\"12345\",\"L\":\"12345\",\"FX\":\"12345\",%nowTime}"#params="{\"nowTime\":%s,\"addr\":\"云通信\",\"T\":\"12345\",\"W\":\"12345\",\"H\":\"12345\",\"L\":\"12345\",\"FX\":\"12345\"}",%nowTimepms = """{\"nowTime\":%(nowTime01)s,\"addr\":%(addr01)s,\"T\":%(T01)s,\"W\":%(W01)s,\"H\":%(H01)s,\"L\":%(L01)s,\"FX\":%(FX01)s}"""params = pms % dict(nowTime01=nowTime,addr01=addr,T01=T,W01=W,H01=H,L01=L,FX01=FX)#print paramsop#params = "{\"nowTime\":\"12345\",\"addr\":\"云通信\",\"T\":\"12345\",\"W\":\"12345\",\"H\":\"12345\",\"L\":\"12345\",\"FX\":\"12345\"}"#print params#params = "{\"nowTime\":\"12345\",\"addr\":\"云通信\",\"T\":\"12345\",\"W\":\"12345\",\"H\":\"12345\",\"L\":\"12345\",\"FX\":\"12345\"}"for i in pce:#params = u'{"name":"wqb","code":"12345678","address":"bz","phone":"13000000000"}'print(send_sms(__business_id,i, "位溫", "SMS_1297439", params))

//預警數據采集,未完..

#!/usr/bin/python #encoding=utf-8 #Author:Ruiy# #python-bs4 #ilio #///import sys import datetimeif sys.getdefaultencoding() != 'utf-8':reload(sys) sys.setdefaultencoding('utf-8')#apt-get install python-bs4 for Ubuntufrom urllib import urlopen from bs4 import BeautifulSoup import reurl='http://www.hnqx.gov.cn/yjs.asp' html=urlopen(url).read() soup=BeautifulSoup(html,'html.parser',from_encoding='utf-8')res_data=soup.find_all('td') print res_data

?阿里短信推送測試,因為只是測試推送的數據爬取間隔很短,正常使用預報是定時報,預警的功能實現中,預警的是有預警立即推送信息!!@

?郵件推送測試結果

?

?

總結

以上是生活随笔為你收集整理的python 简单爬虫获取气象数据发送气象定时报-预报预警信息及时推送及阿里云短信群发接口...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。