標籤:注釋 帳戶 .text timeout service fonts 簽名 length lis
轉載請註明出處:http://blog.csdn.net/gamer_gyt
博主微博:http://weibo.com/234654758
Github:https://github.com/thinkgamer
前言
這幾天突然萌生了一個想法:自己寫個python程式,定時查詢一下自己的CSDN部落格的一些資訊,並以郵件的形式推送給自己,那麼廢話不多說,現在已經把準系統給實現了,每天可以定時發送訪問量,積分,排名,同時會比較前一天的資料,形成對比,呈現給自己,這樣就能一目瞭然的看到自己每天部落格的PV增加數目了,如果你感興趣,拿去玩吧
本文永久地址:http://blog.csdn.net/gamer_gyt/article/details/53823842
內容包括
由於是第一版,實現的功能比較簡單,只是發送自己部落格的PV,積分,排名,原創文章數,轉載文章數,翻譯文章數,評論條數和同比前一天的增長數量
後續計劃:封裝成web的形式,融合自己之前做的一個部落格統計分析系統,使之前的產品更加完善,而且會逐步封裝成Google瀏覽的外掛程式形式,供大家使用方便
部落格統計分析系統git地址:https://github.com/Thinkgamer/BlogAnalysic
代碼結構
說明:
- 這裡並沒有採用資料庫儲存,而是直接寫進csv檔案,後續會更新
- 這裡對每篇文章的資料也做瞭解析,只不過暫時注釋了,沒有進行推送,因為還沒想好合適的方式
涉及的技術
目前涉及:
主要代碼
別的代碼都比較爛,這裡主要說一下python發送email樣本
#-*-coding:utf-8-*-import smtplibfrom email.mime.text import MIMETextfrom email.header import Headerdef send_email(): message = "test" # 第三方 SMTP 服務,我這裡設定的是網易163郵箱 mail_host = "smtp.163.com" # 設定伺服器 mail_user = "[email protected]" # 使用者名稱 mail_pass = "xxxxxxxxxxx" # 密碼 sender = "[email protected]" receive="[email protected]" # 三個參數:第一個為常值內容,第二個 plain 設定文字格式設定,第三個 utf-8 設定編碼 message = MIMEText(message, ‘plain‘, ‘utf-8‘) message[‘From‘] = Header(sender, ‘utf-8‘) message[‘To‘] = Header(receive, ‘utf-8‘) subject = ‘CSDN部落格訪問資訊統計‘ message[‘Subject‘] = Header(subject, ‘utf-8‘) try: smtpObj = smtplib.SMTP() smtpObj.connect(mail_host, 25) # 25 為 SMTP 連接埠號碼 smtpObj.login(mail_user,mail_pass) smtpObj.sendmail(sender, receive, message.as_string()) print("郵件發送成功") except smtplib.SMTPException as e: print("Error: 無法發送郵件")
說明:我這裡的發送郵箱和接收郵箱都是我的163郵箱,原因是我剛開始測試的是QQ郵箱接受,但是萬惡的網易把這個郵件當成垃圾郵件,發送不出去,會提示:
(554, b‘DT:SPM 163 smtp9,DcCowABXdex2kFtYogSVEQ....
提示的url只指向:http://help.163.com/09/1224/17/5RAJ4LMH00753VB8.html
Google了好久,也沒有找到解決辦法,於是乎就換成163郵箱來接受了,當然如果你看了這篇文章,你也解決了這個辦法,那麼請留言告訴我,謝謝
來一張我郵箱接受到的郵件的吧
如果你對這個代碼感興趣的話,或者你也想接受這個資訊推送的話,留下的163郵箱吧,因為別的我怕發不出去(代碼地址:點擊查看)~~~~
補充內容:python傳送簡訊
使用互億無線簡訊介面傳送簡訊,只不過他是收費的,但是有30條的測試
註冊一個帳號,將代碼中的使用者名稱和密碼換成你自己的即可,另外我這裡使用的是python3.4,官網上給的python範例代碼時2.7,直接運行不好使,需要修改一些小地方,代碼如下:
#-*- coding:utf-8 -*-import http.clientimport urllib.requesthost = "106.ihuyi.com"sms_send_uri = "/webservice/sms.php?method=Submit"#使用者名稱是登入ihuyi.com帳號名(例如:cf_demo123)account = "xxxxx"#密碼 查看密碼請登入使用者中心->驗證碼、通知簡訊->帳戶及簽章設定->APIKEYpassword = "xxxxxx"def send_sms(text, mobile): params = urllib.parse.urlencode({‘account‘: account, ‘password‘ : password, ‘content‘: text, ‘mobile‘:mobile,‘format‘:‘json‘ }) headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"} conn = http.client.HTTPConnection(host, port=80, timeout=30) conn.request("POST", sms_send_uri, params, headers) response = conn.getresponse() response_str = response.read() conn.close() return response_strif __name__ == ‘__main__‘: mobile = "171xxxx1234" text = "您的驗證碼是:121254。請不要把驗證碼泄露給其他人。" print(send_sms(text, mobile))
手機收到的簡訊如下:
個人公眾號,歡迎關注
Python寫的CSDN資訊推送小助手