1.爬蟲基礎
爬蟲概念
什麼是爬蟲
爬蟲是乙個應用程式
是指某乙個用於爬取資料的應用程式
爬取的目標可以使整個網際網路 也可以是單獨的某乙個伺服器
在cs結構中 爬蟲屬於client 客戶端
爬蟲的價值 :
網際網路中最有價值的就是資料
爬蟲中首要任務就是要通過網路取獲取模板伺服器的資料;來為自己創造價值
爬蟲的流程:
首先明確 我們的爬蟲是客戶端 要爬的資料在伺服器上儲存,
所以需要借助網路程式設計,底層的網路協議已經有現成的封裝不需要自己寫,
資料傳輸已經解決,問題是對方給我的資料我能不能看懂 我的資料對方能不能看懂
絕大多數網路傳輸都是採用的http(*****)
http 協議 超文字傳輸協議
1.明確要爬取的url位址
2.傳送請求
瀏覽器傳送請求
第三方requests模組 pip install requests
內建的urllib模組
selenium (自動化測試模組)用程式驅動瀏覽器傳送請求
之所以用selenium是因為一些**需要人機互動(點選,拖拽等等操作)
3.接收響應
瀏覽器接受相應後會渲染頁面進行展示 無法拿到資料 所以更多情況下使用用瀏覽器來分析請求詳情
requests和urllib都會直接返回響應體
selenium 提供了find_element***的介面用於獲取資料
4.解析資料
rebeautifulsoup 封裝了常用的正規表示式
移動端返回的/ajax返回的json資料 直接json.load
5.儲存資料
mysql等 關係型資料庫
mongodb redis 非關係型資料庫 一般用在高併發爬蟲中
介面測試工具postman paw(mac 可以自動生成請求**)
scrapy爬蟲框架
分析請求頭中有用的資訊
1.user-agent 用來識別客戶端型別
2.refer 用來識別 使用者從哪個頁面過來的
3.cookie 當頁面需要驗證使用者身份時 使用
響應頭:
location 當請求被重定向時 就會帶有該欄位 可以通過狀態碼30* 來識別重定向
傳送post請求
requests 中
get請求 引數放在位址後或是使用params引數來指定 一格字典
post請求 引數使用data引數來指定 是乙個字典
如果是登入請求一般都需要帶token
先傳送請求獲取token的值 token值一定都在乙個form表單中
登入 github
爬蟲基礎知識
大資料時代,要進行資料分析,首先要有資料來源。而學習爬蟲,可以讓我們獲取更多的資料來源,並且這些資料來源可以按我們的目的進行採集,去掉很多無關資料。網路爬蟲 又被稱為網頁蜘蛛,網路機械人 就是模擬客戶端傳送網路請求,接收請求響應,一種按照一定的規則,自動地抓取網際網路資訊的程式。只要是瀏覽器能做的事...
爬蟲基礎知識整理
網路爬蟲 又被稱為網頁蜘蛛,網路機械人 就是模擬客戶端 主要指瀏覽器 傳送網路請求,接收請求響應,一種按照一定的規則,自動地抓取網際網路資訊的程式。網路爬蟲就是根據網頁的位址來尋找網頁的,也就是url。舉乙個簡單的例子,我們在瀏覽器的位址列中輸入的字串就是url,例如 url就是同意資源定位符 un...
爬蟲基礎知識(柒)
1 mongodb 文件資料庫,儲存的是文件 bson json的二進位製化 json資料儲存的就是js中物件和陣列。2 mongodb特點 內部執行引擎為js直譯器,把文件儲存成bson結構,在查詢時轉換為js物件,並可以通過熟悉的js語法來操作。3 mongo和傳統型資料庫的不同 4 mongo...