最終我決定通過webbrowser模擬登陸支付寶,獲取數據。根據業務需求,我需要把獲取支付寶的數據做成接口,供業務去調用。難點在於如何可以穩定的切換賬號,並且保證服務24小時可用。需要處理一系列的異常和超時。缺點是這邊變成單線程,登錄獲取數據只能一個進行完了再進行下一個。還有就是異地登陸會各種驗證,常用地登陸完全沒問題!然后破解ua算法也可以通過截獲的ua的方式。
簡單列下登錄流程
爬蟲服務 接口
1調用獲取驗證碼接口,向隊列中添加一個登錄請求,等待(提示有幾人排隊)
2從隊列獲取一個登錄用戶
3進入登錄首頁,保存驗證碼圖片,等待用戶輸入賬號密碼 返回圖片驗證碼
4輸入賬號、密碼和驗證碼,調用登錄接口
5通過輪訓的方式,等待接收用戶的登錄信息,開始登錄
6驗證是否登錄成功,並判斷是否需要短信驗證 返回需要短信驗證,再次調用登錄接口
獲取登錄錯誤(然后進入步驟2) 返回登錄錯誤
7通過輪訓的方式,等待接收短信驗證碼,進行短信驗證
8打開個人資料頁面,獲取個人信息 返回登錄成功
如果個人信息獲取錯誤 返回登錄異常
9獲取其他信息
10抓取其他信息 返回其他信息
11從隊列獲取下一個登錄用戶 ... ...
... ...
后來在登陸之后幾分鍾后會被強制退出和在切換用戶登陸方面還得完善,公司也未采用,就只寫了個demo