python 網路爬取資訊 郵箱通知

2021-07-31 23:24:06 字數 1668 閱讀 5181

我們公司erp有乙個簡訊功能,需要充值的,但是沒錢了不會通知,之前業務不多,所以也不在意。

但是現在業務量大了,顧客沒有收到簡訊會投訴。所以老闆要我們資訊部時刻注意著簡訊餘額。

於是乎,寫了個每天爬取**管家簡訊餘額的指令碼。

第一次寫網頁爬取的,學了點bs4和requests,還是蠻有意思的。

import requests  

from bs4 import beautifulsoup

import string

import smtplib

def sendinf(money):

host="smtp.qq.com"

subject="wdgj warning:need recharge"

to="[email protected]"

from="[email protected]"

text="message service need recharge.only %s yuan is left ." %(money)

body=string.join(("from: %s" %from, "to: %s" %to, "subject: %s" %subject, "", text),"\r\n")

try:

server=smtplib.smtp()

server.connect(host, "25")

server.starttls()

server.login("[email protected]","ailoepvkqvnmbjgb")

server.sendmail(from, to, body)

server.quit

return true

except exception, e:

print str(e)

return false

def getinf():

url = ''

cookies=

try:

res = requests.post(url, cookies=cookies)

soup=beautifulsoup(res.text, 'lxml')

lbsmsleft=soup.find(id='lbsmsleft')

money=lbsmsleft.string

return money

except exception, e:

print str(e)

return false

warning=500

money=getinf()

if money<=warning:

if sendinf(money):

msg="only %s yuan is left ." % money

else:

msg="failed to send email."

if __name__ =="__main__":

print msg

最好還是模擬登陸,用cookie登陸,失效了就要改了。但是,模擬登陸的話,指令碼裡就會有賬戶密碼,不太安全,所以就用cookie了,至少有個時效性防護。

以後寫個模擬登陸的,網路爬蟲還是很有意思的。

為什麼網路爬蟲爬取資訊會失敗?

目標 反網路爬蟲最簡單直接的方式就是區分人類訪問使用者和網路機械人,對http請求頭的屬性都分外注意與小心,通過進行 是否具有人性 的檢查,區別人類訪問使用者和網路爬蟲,當訪問次數超過了 所規定的最高訪問次數,就會對該ip進行封禁,出現無法訪問該頁面的情況。但是如果使用http ip,可以讓網路爬蟲...

python實戰 通過偽裝瀏覽器爬取資訊

1 對於 url為http協議的,我們可以直接通過urlopen 直接爬取 例如 import urllib.request url 讀取響應資訊並解碼 html urllib.request.urlopen url read decode utf 8 列印爬到的資訊 print html 爬取結果...

python 網頁抓取資訊

目標 從下面這個網頁抓取前10頁ip 埠 運營商 位址 最後檢測時間並存入mysql資料庫 匯入需要使用到的模組 class huoqu 讀入資料 def init self self.num 1 for i in range 10 獲取網頁資訊 response requests.get i se...