python登錄網易163郵箱,爬取郵件




 1 from common import MyRequests,LoggerUntil,handle_exception
 2 
 3 myRequests.update_headers({ 'Accept':'text/javascript',})    ##這個地方加入accept了,主要是在郵件提取那里,不加入這個返回的是xml格式,加入后返回json格式,這樣在提取方面更容易一些。
 4 url = 'https://mail.163.com/entry/cgi/ntesdoor?funcid=loginone&language=-1&passtype=1&iframe=1&product=mail163&from=web&df=email163&race=-2_262_-2_hz&module=&uid={0}&style=-1&net=t&skinid=null'.format('13148804507@163.com')
 5 datax = {
 6     'username':'13148804507@167.com',
 7 'url2':'http://email.163.com/errorpage/error163.htm',
 8 'savalogin':'0',
 9 'password':'123456789abcd',
10 }
11 
12 text= myRequests.post(url,data = datax)
13 #到這一步已經登錄ok了,可以打印cookie看看就能知道了。
14 
15 
16 抓取郵件,
17 請求完成后,打印text 得到
19 <html><head><script type="text/javascript">top.location.href = "http://mail.163.com/js6/main.jsp?sid=iCApYbICzSWVFIFqHTCCdtntXqDYrVhB&df=email163";</script></head><body></body></html>
20 
21 sid =re.search('sid=(.*?)&',resp.text).group(1)   #使用正則把sid取出來
22 url = 'http://mail.163.com/js6/s?sid={sid}&func=mbox:listMessages&LeftNavfolder1Click=1&mbox_folder_enter=1'.format(sid=sid)
23 datax = {'var':'<?xml version="1.0"?><object><int name="fid">1</int><string name="order">date</string><boolean name="desc">true</boolean><int name="limit">20</int><int name="start">0</int><boolean name="skipLockedFolders">false</boolean><string name="topFlag">top</string><boolean name="returnTag">true</boolean><boolean name="returnTotal">true</boolean></object>'}
24 print myRequests.post(url, data=datax)
25 
26 #這樣就打印出所有郵件了。然后篩選郵件,找出與信用卡相關的郵件,做征信風控用。

 

其中myrequests是從MyRequests類實例化的,因為經常要進行網絡請求,所以里面封裝了 請求 重試 日志打印 異常處理 下載驗證碼 驗證碼重命名 cookiejar和cookie dict的相互轉換 更新headers 網頁編碼格式處理 和內容檢查這些實例方法或者靜態方法。讀者可以自己用requests的session類來代替我這個。

MyRequests大概就是這樣。

 


然后還要鄙視一下有的人,他做好了這個163登錄,叫他發出來,我已經表示願意掏100元作為報酬,他居然想訛詐1000元。那就讓他發霉吧,如果是一個新東西,你沒做過給更多的錢,這還差不多,自己做好了不分享還不是發霉。
本人分享這個方法,簡單直接,登錄只用請求一次。今天是2017年11月8日,可以用這登錄163郵箱,給怕過期的網友說明下代碼的時間。

重點說明一下,我這使用的是email163.com登錄的。
不是使用mail163.com登陸的,一定要注意這個,千萬不要用這個mail163.com登錄,弄了好幾個小時還沒登陸上,加上有網易網盾驗證碼。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM