本篇文章主要介紹"QQ模擬自動登陸實現(帶驗證碼)",主要涉及到java 實現QQ自動登陸(帶驗證碼)方面的內容,對於java 實現QQ自動登陸(帶驗證碼)感興趣的同窗能夠參考一下。若是須要深刻研究或者須要代碼支持請進羣交流;html
這段時間研究了一下QQ自動登陸的流程,並把自動登陸應用到了實際項目中,要實現QQ自動登陸主要要作到幾點:java
一、經過firefox的firebug工具分析QQ登陸的請求參數;服務器
二、QQ密碼的加密;cookie
三、QQ驗證碼的加密;併發
四、模擬http請求發包,收發包的cookies的保存和獲取;工具
五、QQ帳號登陸策略分析;ui
基於上面幾點我用java實現自動登陸,具體過程以下:加密
步驟一:檢查登陸帳號是否須要驗證碼url
請求的地址爲:https://ssl.ptlogin2.qq.com/checkfirefox
返回的結果爲:ptui_checkVC('0','!GZE','\x00\x00\x00\x00\x2d\x14\x3e\x48','70343a5e34cf','0');
其中ptui_checkVC的第一個參數爲 0 表示不須要驗證碼,1 表示須要驗證碼
第二個參數爲不須要驗證碼的時候該值爲驗證碼
第三個參數爲密碼加密的鹽
步驟二:下載驗證碼
https://ssl.captcha.qq.com/getimgbysig
步驟三:校驗驗證碼
https://ssl.captcha.qq.com/cap_union_verify_new
校驗驗證碼相對複雜,須要獲取用戶輸入、鼠標點擊而後再將輸入的驗證碼一塊兒加密併發送到服務器進行校驗
步驟四:登陸
https://ssl.ptlogin2.qq.com/login
將用戶的密碼進行RSA和TEA加密以後發送到login進行登陸,若是密碼登陸則返回
ptuiCB('0','0','http://ptlogin4.game.qq.com/check_sig?pttype=1&uin=123456789&service=login&nodirect=0&ptsigx=d0b3938a48441435dd270040beabe1c80d22e6d6fec29871b8f5648a937f553298934e5de93c6a901b351b1d17c6729d52e716b689f2ffd9b&s_url=http%3A%2F%2Flol.qq.com%2Fmain.shtml&f_url=&ptlang=2052&ptredirect=101&aid=21000501&daid=8&j_later=0&low_login_hour=0®master=0&pt_login_type=1&pt_aid=0&pt_aaid=0&pt_light=0&pt_3rd_aid=0','1','
登陸成功!
', 'test');
實現了上面四個步驟就能夠完成QQ帳號的網頁自動登陸,總的來講仍是比較容易實現,就是要花時間去分析。
若是須要深刻研究或者須要代碼支持請進羣交流;