網(wǎng)站內容自動(dòng)更新(如何使用Python和常用的計算機小程序來(lái)構建一個(gè)RSS提示系統)
優(yōu)采云 發(fā)布時(shí)間: 2021-12-09 21:16網(wǎng)站內容自動(dòng)更新(如何使用Python和常用的計算機小程序來(lái)構建一個(gè)RSS提示系統)
無(wú)論是學(xué)生還是員工,都需要時(shí)刻關(guān)注學(xué)?;蚬揪W(wǎng)站的通知,盡量及時(shí)了解最新消息。
大多數博客或數據資源網(wǎng)站都會(huì )有自己的RSS通知系統,方便將網(wǎng)站的最新信息及時(shí)推送給需要的用戶(hù),用戶(hù)也可以通過(guò)RSS閱讀器網(wǎng)站的最新內容。
由于學(xué)?;蚬揪W(wǎng)站服務(wù)對象的特殊性和局限性,一般不會(huì )建立自己的RSS系統。
作為優(yōu)秀的人,我們可以構建自己的RSS通知系統。
下面介紹如何使用Python和常用的電腦小程序搭建RSS通知系統,自動(dòng)檢測目標網(wǎng)站發(fā)出的通知,并立即發(fā)送通知郵件。
文章 本期RSS通知系統設計的主要思路是:
1.建立通知數據庫
該步驟的目的是抓取目標網(wǎng)站發(fā)布的通知數據并存儲,從而建立與目標網(wǎng)站內容對應的本地數據庫。
考慮到數據庫中的數據將是識別和獲取新通知的唯一途徑,建立的數據庫將存儲每個(gè)通知的標題、發(fā)布日期和訪(fǎng)問(wèn)鏈接。
第一步使用的模塊是 urllib、BeautifulSoup 和 sqlite3 模塊。其中,目標網(wǎng)頁(yè)的html數據是通過(guò)urllib模塊抓取的;通過(guò)BeautifulSoup模塊解析網(wǎng)頁(yè)數據并抓取內容;目標網(wǎng)站 現有的通知數據庫是通過(guò)sqlite3 模塊建立的。
這一步的主要代碼如下所示。
2.建立郵件發(fā)送系統
這一步的目的是使用Python標準庫模塊smtplib來(lái)訪(fǎng)問(wèn)網(wǎng)絡(luò )并創(chuàng )建一個(gè)郵件函數。
由于我們的大部分電腦都沒(méi)有自己的郵件服務(wù)器,所以我們需要使用第三方服務(wù)器來(lái)模擬郵件發(fā)送。
常用的有谷歌郵件系統、網(wǎng)易郵件系統和QQ郵件系統。比如QQ郵件系統的SMTP服務(wù)器和端口號分別是465和465。
這一步的主要代碼如下所示。
本例中使用Python標準庫中的email模塊對郵件信息進(jìn)行格式化,主要包括郵件主題和發(fā)件人、收件人郵箱昵稱(chēng)、郵件內容等信息。
3.檢測目標解析網(wǎng)站通知
前兩步完成了目標網(wǎng)站現有通知數據庫和郵件發(fā)送系統的建立,第三步要完成的工作主要由兩部分組成。
一個(gè)是使用第一步使用的urllib和BeautifulSoup模塊解析目標網(wǎng)站的內容數據,與之前建立的數據庫進(jìn)行對比測試。
其次,如果在目標網(wǎng)站上檢測到新的通知,則將新的通知數據插入到數據庫中,然后發(fā)送提醒郵件。
這一步的主要代碼如下所示。
本例僅選擇最新通知發(fā)送郵件提醒,具體郵件信息可自行設置。
4.制定計劃任務(wù)
前三步完成了使用Python獲取目標網(wǎng)站的最新通知并發(fā)送提醒郵件的腳本程序。
這一步將利用Windows自帶的DOS命令框架和任務(wù)調度器,每小時(shí)自動(dòng)運行一次Python腳本,達到自動(dòng)更新通知的目的。
首先需要編寫(xiě)一個(gè)cmd命令文件,方便在DOS框架下執行Python腳本。
主要代碼如下所示:
@echo off # 關(guān)閉回顯
cd C:\demo # 找到Python腳本文件的路徑
python Python.py # 執行Python腳本文件
最后使用任務(wù)調度器制定一個(gè)任務(wù),可以設置為每小時(shí)自動(dòng)運行cmd命令文件。
總結
這篇關(guān)于Python如何自動(dòng)獲取目標網(wǎng)站文章的最新通知的文章到此結束。更多相關(guān)python自動(dòng)獲取最新通知,請搜索ZaLou.Cn之前的文章或繼續瀏覽下方相關(guān)文章,希望大家多多支持ZaLou.Cn未來(lái)!


