1. <wbr id="m8vu6"></wbr>

      <del id="m8vu6"><center id="m8vu6"><source id="m8vu6"></source></center></del>
        <p id="m8vu6"><sub id="m8vu6"></sub></p>

        VB.net 2010 視頻教程 VB.net 2010 視頻教程 python基礎視頻教程
        SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
        當前位置:
        首頁 > 編程開發 > python入門 >
        • python入門教程之爬蟲前奏——網絡請求

        本站最新發布   Python從入門到精通|Python基礎教程
        試聽地址  
        http://www.squ68.com/eschool/python.html


        網絡請求的方式

        http網絡請求有八種 : GET  POST HEAD PUT  DELETE CONNECT TRACE  OPTIONS

        最常見的請求方式為 GET 和 POST

        get:當客戶端要從服務器中讀取文檔時,當點擊網頁上的鏈接或者通過在瀏覽器的地址欄輸入網址來瀏覽網頁的,使用的都是GET方式。GET方法要求服務器將URL定位的資源放在響應報文的數據部分,回送給客戶端。使用GET方法時,請求參數和對應的值附加在URL后面,利用一個問號(“?”)代表URL的結尾與請求參數的開始,傳遞參數長度受限制。例如,/index.html?id=100&op=bind,這樣通過GET方式傳遞的數據直接表示在地址中。

        post:POST方法將請求參數封裝在HTTP請求數據中,以名稱/值的形式出現,可以傳輸大量數據,這樣POST方式對傳送的數據大小沒有限制,而且也不會顯示在URL中。

        head:HEAD就像GET,只不過服務端接受到HEAD請求后只返回響應頭,而不會發送響應內容。當我們只需要查看某個頁面的狀態的時候,使用HEAD是非常高效的,因為在傳輸的過程中省去了頁面內容。

        get 和post的區別:

        1.GET提交,請求的數據會附在URL之后(就是把數據放置在HTTP協議頭<request-line>中),以?分割URL和傳輸數據,多個參數用&連接;例如:login.action?name=hyddd&password=idontknow&verify=%E4%BD%A0 %E5%A5%BD。如果數據是英文字母/數字,原樣發送,如果是空格,轉換為+,如果是中文/其他字符,則直接把字符串用BASE64加密,得出如: %E4%BD%A0%E5%A5%BD,其中%XX中的XX為該符號以16進制表示的ASCII。

          POST提交:把提交的數據放置在是HTTP包的包體<request-body>中。

          因此,GET提交的數據會在地址欄中顯示出來,而POST提交,地址欄不會改變
        注意:一般反爬做的好的網站原本用get請求就可以的可能會要求使用post方法 不能想當然

        一般網絡請求分為三個部分

        一是url 二是data(post請求中含有)三是head

        一般網絡請求中常用到的參數

        user-agent:瀏覽器名稱,應對反爬必備的請求頭偽裝

        Referer:表明當前請求從哪個頁面過來的

        cookie:http協議是無狀態的。cookie的存在可以幫助服務器識別是否為同一個用戶發送的請求,一般需要登錄才能訪問的網站就需要cookie參數了。

         

        Http常用響應狀態碼

        200:請求正常

        301:永久重定向

        302:暫時重定向

        400:url錯誤

        403:服務器拒絕訪問,權限不夠

        500:服務器內部錯誤

        詳見

        HTTP狀態碼全部

        相關教程
                
        免费看成年人视频大全_免费看成年人视频在线观看