小工具
本來這么晚是不準備寫博客的,當是想到了那個狗子絕對會在開學的時候跟我逼逼這個事情,所以,還是老老實實地寫一下吧。
Baidu統計API的使用
系統環境:
Python2
getSiteList的使用
官方文檔在此,說實話,這是我使用百BaiduAPI最坑的一次,在這個官方文檔的getSiteList中,完全不告訴你請求參數是什么。
首先,需要獲得百度統計API的token,在這里寫了token獲得的流程。
# encoding=utf-8import requestsimport jsonsiteListUrl = "https://api.baidu.com/json/tongji/v1/ReportService/getSiteList"# 這個是請求的數據data = { "header": { 'username': "你的用戶名", 'password': "你的密碼", 'token': '前面所獲得的token', 'Content-type': 'application/json' }}# 把請求數據變成json數據data = json.dumps(data)r = requests.post(url,data=data)# 在返回的信息中包含了網站的id等等,這些官方有說明print r.textgetData的使用
# 假設我的網站的ID是:12914021,getDataUrl = "https://api.baidu.com/json/tongji/v1/ReportService/getData"# 請求數據如下data = { "header": { 'username': "你的用戶名", 'password': "你的密碼", 'token': '前面所獲得的token', 'Content-type': 'application/json' }, # 這個body的請求參數可以去參考官方說明,在這里我只是想獲取pv和uv的數據 "body": { 'site_id': 12914021, 'method': 'trend/time/a', # 開始統計時間 'start_date': '20190125', # 結束統計時間 'end_date': '20190126', # 獲得pv和uv數據 'metrics': 'pv_count,visitor_count' }}r = requests.post(getDataUrl,data=json.dumps(data))result = json.loads(r.text)pv_uv = result["body"]["data"][0]["result"]["pageSum"][0]# 頁面瀏覽量pv = pv_uv[0]# 獨立訪客數uv = pv_uv[1]print pv_uv # 例如[120,100]此時,我們就已經獲得了pv和nv的數據。
使用Python發送郵件
Python2
在這里,我使用的是SMTP協議去發送郵件,使用的是QQ郵箱,QQ郵箱的開啟,參考百度經驗。
from email.mime.text import MIMETextfrom email.header import Headerfrom smtplib import SMTP_SSL# qq郵箱smtp服務器hostServer = 'smtp.qq.com'# 發送者的郵箱sendMail = '你的QQ郵箱'receiveMail = '接收方的郵件地址'# ssl登錄smtp = SMTP_SSL(hostServer)# 發送者的QQ,以及授權碼smtp.login('你的qq', '授權碼')# plain代表發送為文本msg = MIMEText("你要發送的內容", "plain", 'utf-8')# 發送的標題msg["Subject"] = Header("帥哥的郵件", 'utf-8')# 發送方msg["From"] = sendMail# 接收方msg["To"] = receiveMail# 發送郵件smtp.sendmail(sendMail, receiveMail, msg.as_string())# 退出smtp.quit()
新聞熱點
疑難解答