爬蟲基本知識1

爬蟲的實例:1 搜索引擎(百度,谷歌)2 伯樂在線 3 搶票軟件 4 數據分析與研究(數據冰山之乎專欄)
網絡爬蟲:爬蟲是一個模擬人類請求網站行爲的程序。可以自動請求網頁,之後使用一定的規則提取大量的有價值的數據。
通用爬蟲(爬取網頁,沒有目的性,瀏覽器常用)
聚焦爬蟲(經過對內容的篩選,爬取特定的內容,目的性強)

http協議和Chrome抓包工具
http協議:端口(80) Https(http的加密版本),在http下加了ssl層,端口(443)
url:scheme(訪問協議【http,https,ftp等】)+ host(主機名<域名>[www.baidu.com也可以是ip])+port + path【文件路徑】+查詢字符串 + anchor【錨點】(頁面定位)

get請求:只從服務器獲取數據,並不會對服務器資源產生任何影響。
post請求:向服務器發送數據(登錄),上傳文件,會對服務器資源產生影響的時候使用post請求。

在http協議中,向服務器發送一個請求,數據分爲三部分,第一個是把數據放在url中(如查詢字符串),第二個是把數據放在body及formdata(post請求中)中,第三個是把數據放在head中。head的參數分爲以下三種:
User-Agent(瀏覽器),服務器可以通過其知道請求是由哪個瀏覽器發送的。如果是爬蟲發送的,則默認Python。因此,我們需要設置值來僞裝爬蟲。
Referer:表明當前這個請求是從哪個url過來的。這個一般也可以用來作發爬蟲技術。如果不是從指定頁面過來的,那麼就不做相關的響應。
Cookie:因爲http協議是無狀態的,當同一用戶發送兩次請求,服務器是沒有能力知道這兩個請求是否來自同一個人,這時使用cookie來標識。一般如果想要做登錄後才能訪問的網站,就需要發送cookie信息了。
http狀態碼
200 請求過程正常,數據不一定正常
301 永久重定向 比如訪問www.jingdong.com時會重定向到www.jd.com
302 臨時重定向 比如在訪問一個需要登錄的頁面,但你沒有登錄,那麼就會被重定向到登錄頁面。
400 請求的url錯誤。(錯誤請求)
403 服務器拒絕訪問,權限不夠。
404 服務器找不到請求的網頁。 (網頁不存在)
500 服務器內部錯誤。服務期出現bug了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章