日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python-爬蟲(chóng)初識(shí)-web端微信登錄(三)

系統(tǒng) 1968 0

目錄

一,輪詢和長(zhǎng)輪詢

二,分析web端微信

三,爬蟲(chóng)套路


?

一,輪詢和長(zhǎng)輪詢

短輪詢 的基本思路就是瀏覽器每隔一段時(shí)間向?yàn)g覽器發(fā)送http請(qǐng)求,服務(wù)器端在收到請(qǐng)求后,不論是否有數(shù)據(jù)更新,都直接進(jìn)行響應(yīng)。這種方式實(shí)現(xiàn)的即時(shí)通信,本質(zhì)上還是瀏覽器發(fā)送請(qǐng)求,服務(wù)器接受請(qǐng)求的一個(gè)過(guò)程,通過(guò)讓客戶端不斷的進(jìn)行請(qǐng)求,使得客戶端能夠模擬實(shí)時(shí)地收到服務(wù)器端的數(shù)據(jù)的變化。

  這種方式的 優(yōu)點(diǎn) 是比較簡(jiǎn)單,易于理解,實(shí)現(xiàn)起來(lái)也沒(méi)有什么技術(shù)難點(diǎn)。 缺點(diǎn) 是顯而易見(jiàn)的,這種方式由于需要不斷的建立http連接,嚴(yán)重浪費(fèi)了服務(wù)器端和客戶端的資源。尤其是在客戶端,距離來(lái)說(shuō),如果有數(shù)量級(jí)想對(duì)比較大的人同時(shí)位于基于短輪詢的應(yīng)用中,那么每一個(gè)用戶的客戶端都會(huì)瘋狂的向服務(wù)器端發(fā)送http請(qǐng)求,而且不會(huì)間斷。人數(shù)越多,服務(wù)器端壓力越大,這是很不合理的。

因此短輪詢不適用于那些同時(shí)在線用戶數(shù)量比較大,并且很注重性能的Web應(yīng)用。

            
              var xhr = new XMLHttpRequest();
    setInterval(function(){
        xhr.open('GET','/user');
        xhr.onreadystatechange = function(){

        };
        xhr.send();
    },1000)
            
          

長(zhǎng)輪詢 ajax實(shí)現(xiàn)當(dāng)服務(wù)器收到客戶端發(fā)來(lái)的請(qǐng)求后,服務(wù)器端不會(huì)直接進(jìn)行響應(yīng),而是先將這個(gè)請(qǐng)求掛起,然后判斷服務(wù)器端數(shù)據(jù)是否有更新。如果有更新,則進(jìn)行響應(yīng),如果一直沒(méi)有數(shù)據(jù),則到達(dá)一定的時(shí)間限制(服務(wù)器端設(shè)置)才返回。?。 客戶端JavaScript響應(yīng)處理函數(shù)會(huì)在處理完服務(wù)器返回的信息后,再次發(fā)出請(qǐng)求,重新建立連接。

  長(zhǎng)輪詢和短輪詢比起來(lái),明顯減少了很多不必要的http請(qǐng)求次數(shù),相比之下節(jié)約了資源。長(zhǎng)輪詢的缺點(diǎn)在于,連接掛起也會(huì)導(dǎo)致資源的浪費(fèi)。

            
              function ajax(){
        var xhr = new XMLHttpRequest();
        xhr.open('GET','/user');
        xhr.onreadystatechange = function(){
              ajax();
        };
        xhr.send();
    }
            
          

輪詢與長(zhǎng)輪詢都是基于HTTP的,兩者本身存在著缺陷:輪詢需要更快的處理速度;長(zhǎng)輪詢則更要求處理并發(fā)的能力;兩者都是“被動(dòng)型服務(wù)器”的體現(xiàn):服務(wù)器不會(huì)主動(dòng)推送信息,而是在客戶端發(fā)送ajax請(qǐng)求后進(jìn)行返回的響應(yīng)。而理想的模型是"在服務(wù)器端數(shù)據(jù)有了變化后,可以主動(dòng)推送給客戶端",這種"主動(dòng)型"服務(wù)器是解決這類問(wèn)題的很好的方案。Web Sockets就是這樣的方案。

二,分析web端微信

請(qǐng)求路徑 :?https://wx.qq.com/?

代碼地址:https://github.com/duanlei123/wechat.git?有詳細(xì)注釋....

三,爬蟲(chóng)套路

1,GET

2,POST

3,Cookies

4,Headers

依次注意-考慮以上4點(diǎn),便可成功爬取任何你想的....


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 西城区| 杨浦区| 沧州市| 祁阳县| 南丹县| 三穗县| 南郑县| 望谟县| 大新县| 秦安县| 太湖县| 宁乡县| 都安| 农安县| 新竹县| 孙吴县| 新营市| 吉安县| 陆河县| 九龙县| 尼玛县| 红桥区| 蚌埠市| 华蓥市| 如皋市| 获嘉县| 当雄县| 临漳县| 崇明县| 灵璧县| 承德县| 西丰县| 仁化县| 梨树县| 嘉定区| 山阳县| 德州市| 山阴县| 达拉特旗| 新营市| 古交市|