qcloudsms_py短信發(fā)送和easyquotation股票實(shí)時(shí)數(shù)據(jù)獲取
1、qcloudsms_py發(fā)送短信
作者購(gòu)買了騰訊云的短信服務(wù),大概買了1000條短信,騰訊云發(fā)送短信要用其提供的qcloudsms發(fā)送短信,所以我們就用pip或者idea自帶的包管理工具都可以安裝,這塊我們主要貼一下發(fā)送短信的代碼。
from qcloudsms_py import SmsSingleSenderfrom qcloudsms_py.httpclient import HTTPErrorimport ssl# 發(fā)送短信class Qsms:# 短信應(yīng)用SDK AppIDappid = ******** # SDK AppID是1400開頭# 短信應(yīng)用SDK AppKeyappkey = "********"# 需要發(fā)送短信的手機(jī)號(hào)碼default_phone = ["******"]# 短信模板ID,需要在短信應(yīng)用中申請(qǐng)template_id = 123123# 簽名????sms_sign?=?"*****"# 發(fā)送短信def sendSms(self, phones, code, price, operation):ssl._create_default_https_context = ssl._create_unverified_contextssender = SmsSingleSender(self.appid, self.appkey)# 當(dāng)模板沒有參數(shù)時(shí),`params = []`params = []params.append(code)params.append(price + "-" + operation)if phones == None or phones == "":phonesTemp = self.default_phoneelse:phonesTemp = phones.split(",")for item in phonesTemp:try:# 簽名參數(shù)不允許為空串ssender.send_with_param(86, item, self.template_id, params, sign=self.sms_sign, extend="", ext="")print("send to:" + item)except HTTPError as e:print(e)except Exception as e:print(e)Qsms().sendSms("11111111","000009.sz","15.56","buy")
我們看一下發(fā)送短信的效果吧,這塊作者購(gòu)買了小米手環(huán),方便提醒,由于短信模板的審核比較難,所以作者采用直接采用了登陸的模板,能看懂即可。

2、easyquotation實(shí)時(shí)獲取股票數(shù)據(jù)
作者找了小半天,首先想到的是解析html,然后發(fā)現(xiàn)頁(yè)面渲染是異步。沒辦法找到了東方財(cái)富web網(wǎng)站的一個(gè)ajax接口,如獲至寶呀,結(jié)果發(fā)現(xiàn)請(qǐng)求的ur中有加密串,所以是沒辦法用到額,github上一頓搜都不好使。無(wú)奈最后去知乎上一搜,發(fā)現(xiàn)了easyquotation這個(gè)工具。嘗試了一下發(fā)現(xiàn)這才是yyds呀。而且這個(gè)工具獲取股票數(shù)據(jù)的姿勢(shì)很強(qiáng),能夠彌補(bǔ)之前我遍歷獲取全網(wǎng)股票數(shù)據(jù)的耗時(shí)問題,當(dāng)然這個(gè)還有待探索。今天發(fā)現(xiàn)easyquotation提供獲取實(shí)時(shí)股票價(jià)格的能力,這才是我今天的核心目標(biāo)。順手還發(fā)現(xiàn)了一個(gè)開源交易工具easytrader(https://github.com/shidenggui/easytrader)看起來(lái)可以直接自動(dòng)化交易了,以后有機(jī)會(huì)了再嘗試吧。這塊主要介紹如何獲取實(shí)時(shí)股票數(shù)據(jù)。
easyquotation提供sina和tencent的財(cái)經(jīng)數(shù)據(jù)源。通過對(duì)比發(fā)現(xiàn)tencent的數(shù)據(jù)返回了我必須要用到的換手率,為我大騰訊打call!廢話不說了,直接上代碼吧~
easyquotation的安裝也是比較容易的,用pip或者idea自帶的包管理工具都可以安裝。
import easyquotation#?建議用tencet,因?yàn)槠浞祷赝炅藅ouver字段quotation?=?easyquotation.use('tencent')?#?新浪?['sina']?騰訊?['tencent',?'qq']#單只股票b=quotation.real('sz000009') # 支持直接指定前綴,如 'sh000001'print(b)#多只股票c=quotation.stocks(['sz000009', '162411'])print(c)
應(yīng)該說所需要的數(shù)據(jù)tencet都給我們提供了,再此感謝小馬哥~

本次文章就寫到這里了,喜歡的同學(xué)可以給我點(diǎn)贊哦~

