小說跟新提醒程序,利用python 爬蟲、python 文件存儲、python 郵件發送、windows 定時啓動 共同完成對於《劍來》小說的全方位、無死角跟新監控!!!

背景: 每天n次打開《劍來》小說網站,查看更新,尤其是每次點開都是沒有更新的情況下——我痛不欲生[==]今天我痛定思痛,終於下定決心,下午1點到4點 三個小時,做完了這個跟新提醒程序,讓我長長的呼出一口惡氣~~~~·   

                                                                                 舒服了。。。

點擊運行,效果:-----

當然,你手機上的網易郵箱也可以收到,到時候試想一下這樣一幅場景,

你優哉遊哉的在刷手機,

然後突然彈出一個郵件提醒

然後彈出 ‘劍來跟新’

你悠哉悠哉的打開郵箱,打開郵件,

點擊郵件包含的連接,

美滋滋的看起了彷彿是自己獻上自己的小說~

哦~

起飛~

之前我的博客已經寫了一部分相關的知識點  :

郵件發送部分:

用python 來發送郵件,163->qq 失敗 qq->163 成功!!!

爬蟲部分

python爬蟲 入門級 實例 看小說黨的福利 學習 《劍來》小說 下載 其他小說原理類似 ~

 

之後就是一個組裝而已

主要邏輯:

#encoding:utf-8
import os
import requests
from bs4 import BeautifulSoup
from weimeng import send_mail   # 這個是我自己定義的工具類,下面會給出解釋
# 文件處理模塊
name = ''
dest = './name.txt'
try:
    f = open(dest,'r')
    name = f.read()
    print ("上一章節序號:"+name) #上一章節序號
    f.close()
    
except Exception as e:
    print(e)
    f = open(dest,'w')
    f.close()

#跟新邏輯判斷模塊
                            #爬蟲取得最新章節的序號

url = "http://www.jianlaixiaoshuo.com/"
res = requests.get(url)
res.encoding = res.apparent_encoding
data = res.text
html = BeautifulSoup(data,'lxml')
dds = html.find_all('dd')

new_name = dds[-1].find('a').get('href').split('/')[-1]
print("最後一章章節序號:"+new_name)
if name != new_name:
    f = open(dest,'w')
    f.write(new_name)
    f.close()
    send_mail.sendJianLaiMail("http://www.jianlaixiaoshuo.com/book/"+new_name)


    
    

我自己的工具類 sendMail   :

這種工具類和其他import 的依賴放的位置是一樣的,自己找一下

點開來都是這樣類似的結構:

代碼:

# -*- coding: UTF-8 -*-

'''
send mail from qq  to  163

@author: weimeng
'''
import smtplib
from email.mime.text import MIMEText
from email.header import Header
 
# 第三方 SMTP 服務
mail_host='smtp.qq.com'#"smtp.163.com"  #設置服務器
mail_user="******@qq.com"    #用戶名
mail_pass="******"   #口令  授權密碼
 
 
sender = '******@qq.com'
receiver = '******@163.com'  # 接收郵件,可設置爲你的QQ郵箱或者其他郵箱
subject = '劍來跟新'


 
def sendJianLaiMail(url):
    mail_msg = "<p>劍來今天跟新!!!</p><p><a href='{}'>最新一章網址</a></p>".format(url)
    
    message = MIMEText(mail_msg, 'html', 'utf-8')
    message['From'] = Header(sender, 'utf-8')
    message['To'] =  Header(receiver, 'utf-8')
    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, receiver, message.as_string())
        smtpObj.quit()
        print ("郵件發送成功")
    except smtplib.SMTPException as e:
        print(e)
        print ("Error: 無法發送郵件")
if __name__ == '__main__':
    url='http://www.baidu.com'
    sendJianLaiMail(url)

寫好的    主體程序   UpdateReminder.py   用 pyinstaller  打包成 exe 

cmd 裏輸入 

pyinstaller -i  ico文件地址就是一個圖片   -F  python腳本地址

就會在  ~/dist 目錄下生成對應的   UpdateReminder.exe 文件了,如圖:

最後定時啓動的部分,在window10 環境下,極其簡單,怎麼打開這個界面:

出門左轉

 

還要加入觸發器和操作,填一下很簡單

 

最後可以看到已經加入  任務計劃 了  哈哈哈,163郵箱綁定到手機app上,接受郵件!每天靜等總管跟新,沒有郵件也不用去網站看有沒有跟新了。

 

手機上效果:(我設置的早晚兩次跟新檢查提醒  9點 和 21點多)

展示效果圖

美滋滋~~~

over

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章