溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python中怎么自動(dòng)獲取目標(biāo)網(wǎng)站最新通知

發(fā)布時(shí)間:2021-07-28 17:49:43 來源:億速云 閱讀:166 作者:Leah 欄目:大數(shù)據(jù)

Python中怎么自動(dòng)獲取目標(biāo)網(wǎng)站最新通知,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

1.建立通知數(shù)據(jù)庫(kù)

這一步的目的是爬取目標(biāo)網(wǎng)站已經(jīng)發(fā)布的通知的數(shù)據(jù),并進(jìn)行存儲(chǔ),從而建立與該目標(biāo)網(wǎng)站內(nèi)容相對(duì)應(yīng)的本地?cái)?shù)據(jù)庫(kù)。

考慮到數(shù)據(jù)庫(kù)中的數(shù)據(jù)將是辨別和獲取一則新通知的唯一方法,因此所建立的數(shù)據(jù)庫(kù)將存儲(chǔ)每一條通知的標(biāo)題、發(fā)布日期和訪問鏈接。

第一步使用到的模塊有urllib、BeautifulSoup和sqlite3模塊。其中,通過urllib模塊爬取目標(biāo)網(wǎng)頁(yè)html數(shù)據(jù);通過BeautifulSoup模塊解析網(wǎng)頁(yè)數(shù)據(jù)、爬取網(wǎng)頁(yè)內(nèi)容;通過sqlite3模塊建立目標(biāo)網(wǎng)站已有通知數(shù)據(jù)庫(kù)。

2.建立郵件發(fā)送系統(tǒng)

這一步的目的是使用Python標(biāo)準(zhǔn)庫(kù)模塊smtplib來訪問網(wǎng)絡(luò),創(chuàng)建一個(gè)發(fā)送電子郵件的功能。

由于我們大部分人的計(jì)算機(jī)并沒有建立自己的郵件服務(wù)器,因此需借助第三方服務(wù)器來模擬郵件發(fā)送。

常用的有谷歌郵件系統(tǒng)、網(wǎng)易郵件系統(tǒng)和QQ郵件系統(tǒng),如QQ郵件系統(tǒng)的SMTP服務(wù)器和端口號(hào)分別為smtp.qq.com和465。

該步主要代碼展示如下。

Python中怎么自動(dòng)獲取目標(biāo)網(wǎng)站最新通知

在這個(gè)示例中,使用了Python標(biāo)準(zhǔn)庫(kù)中的email模塊將電子郵件信息進(jìn)行了格式化,主要包括郵件的主題與發(fā)件人、收件人郵箱昵稱和郵件內(nèi)容等信息。

3.解析檢測(cè)目標(biāo)網(wǎng)站通知

前面兩步,已經(jīng)完成了目標(biāo)網(wǎng)站已有通知數(shù)據(jù)庫(kù)和郵件發(fā)送系統(tǒng)的建立,第三步要完成的工作,主要由兩部分組成。

一是,利用第一步使用的urllib、BeautifulSoup模塊解析目標(biāo)網(wǎng)站內(nèi)容數(shù)據(jù),并與前面建立的數(shù)據(jù)庫(kù)進(jìn)行對(duì)比檢測(cè)。

二是,若檢測(cè)到目標(biāo)網(wǎng)站有新的通知,則將新通知數(shù)據(jù)插入到數(shù)據(jù)庫(kù)中,然后,發(fā)送提示電子郵件。

該步主要代碼展示如下。

在這個(gè)示例中,只選取了最新的一條通知發(fā)送了電子郵件提示,具體郵件信息可自己設(shè)定。

Python之自動(dòng)獲取目標(biāo)網(wǎng)站最新通知

4.制定計(jì)劃任務(wù)

前面三步,已經(jīng)完成了使用Python獲取目標(biāo)網(wǎng)站最新通知,并發(fā)送提示電子郵件的腳本程序。

在這一步,將使用Windows自帶的DOS命令框架和任務(wù)計(jì)劃程序去每小時(shí)自動(dòng)運(yùn)行一次Python腳本,實(shí)現(xiàn)自動(dòng)更新通知的目的。

首先,需要編寫一個(gè)cmd命令文件,方便在DOS框架下執(zhí)行Python腳本。

主要代碼展示如下:

@echo off  # 關(guān)閉回顯
cd C:\demo  # 找到Python腳本文件的路徑
python Python.py  # 執(zhí)行Python腳本文件

最后,使用任務(wù)計(jì)劃程序制定一個(gè)任務(wù),可設(shè)定為每隔一小時(shí)自動(dòng)運(yùn)行一次cmd命令文件。

Python中怎么自動(dòng)獲取目標(biāo)網(wǎng)站最新通知

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI