python3爬蟲實踐(二) 爬蟲前奏

2021-10-04 13:17:23 字數 1154 閱讀 7405

1.1:什麼是網路爬蟲

1.2:通用爬蟲和聚焦爬蟲

2.1:什麼是 http 和 https 協議

2.2:在瀏覽器中傳送乙個 http 請求的過程

2.3:url 詳解

scheme:

//host:port/path/?query-string=***#anchor

2.4:常用請求方法

get 請求

一般情況下,只從伺服器獲取資料下來,並不會對伺服器資源產生任何影響的時候會使用 get 請求

post 請求

向伺服器傳送資料(登入)、上傳檔案等,會對伺服器資源產生影響的時候會使用 post 請求

2.5:請求頭常見引數

user-agent

瀏覽器名稱。請求乙個網頁的時候,伺服器通過這個引數就可以知道這個請求是哪種瀏覽器傳送的。如果我們是通過爬蟲傳送,那麼我們的 user-agent 就是 python,這對於那些有反爬蟲機制的**來說,可以輕易的判斷你這個請求是爬蟲。因此我們要經常設定這個值為一些瀏覽器,來偽裝我們的爬蟲

referer

表明當前這個請求是從哪個 url 來的。這個一般也可以用來做反爬蟲技術。如果不是從制定頁面過來的,那麼就不做相關的響應

cookie

http 協議是無狀態的。也就是同乙個人傳送了兩次請求,伺服器沒有能力知道這兩個請求來自同乙個人。因此這時候就用 cookie 來做標識。一般如果想要做登入後才能訪問**,那麼就需喲傳送 cookie 資訊了

2.6:常見響應狀態碼

200請求正常,伺服器正常的返回資料(資料是否正確是不定的)

301永久重定向。比如在訪問 www.jingdong.com 的時候會重定向到 www.jd.com

302臨時重定向。比如在訪問乙個需要登入的頁面的時候,而此時沒有登入,那麼就會重定向到登入介面

400請求的 url 在伺服器找不到。換句話說就是請求 url 錯誤

403伺服器拒絕訪問,許可權不夠

500伺服器內部錯誤。可能是伺服器出現 bug 了

Python3爬蟲 鬥魚彈幕爬蟲

在網上找到了乙份鬥魚彈幕伺服器第三方接入協議v1.6.2,有了第三方介面,做起來就容易多了。鬥魚後台協議頭設計如下 這裡的訊息長度是我們傳送的資料部分的長度和頭部的長度之和,兩個訊息長度是一樣。然後要注意的是該協議使用的是小端整數,所以我們要對資料進行處理後再傳送,這裡可以使用int.to byte...

python3爬蟲實踐(七) xpath介紹

1 什麼是 xpath 2 xpath 開發工具 3 xpath 語法 表示式描述 示例結果 nodename 選取此節點的所有節點 bookstore 選取 bookstore 下所有的子節點 如果是在最前面,代表從根節點擊取。否則選擇某節點下的某個節點 bookstore 選取根元素下所有的 b...

python3爬蟲實踐(八) lxml 庫

1 基本使用 from lxml import etree text 標題的效果 四級標題的效果 利用 etree.html 將字串解析為 html 檔案 html etree.html text 將字串序列化為 html 文件 2 從檔案中讀取 html from lxml import etre...