爬蟲-----數據采集的基本原理


常見的稱謂是網頁抓屏(screen scraping)、數據挖掘(data mining)、網絡收割(Web harvesting)或其他類似的版本。器人(bots)。

 

理論上,網絡數據采集是一種通過多種手段收集網絡數據的方式,不光是通過與 API 交互 (或者直接與瀏覽器交互)的方式。最常用的方法是寫一個自動化程序向網絡服務器請求

數據(通常是用 HTML 表單或其他網頁文件),然后對數據進行解析,提取需要的信息。

實踐中,網絡數據采集涉及非常廣泛的編程技術和手段,比如數據分析、信息安全等。本 書將在第一部分介紹關於網絡數據采集和網絡爬行(crawling)的基礎知識,一些高級主 題放在第二部分介紹。 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

網絡數據采集的基本原理

Python從網絡服務器請求信息

如何對服務器的響應進行基本處理

如何以自動化手段與網站進行交互

 

 

 

 

• 通過網站域名獲取 HTML 數據
• 根據目標信息解析數據
• 存儲目標信息
• 如果有必要,移動到另一個網頁重復這個過程 

 

 

 

 

先向網絡服務器發出GET請求,以獲取具體的頁面。再從頁面中讀取HTML的內容,在進一步的進行數據的篩選。

一次client對Server請求的流程:

  1 client發出1/0的比特值,表示電路的高低電壓,比特值會形成一種信息,帶有請求頭和請求體,頭里有client的本地router的mac ip 和Server的ip。體里有client對Server應用的請求。

  2 client的本地router收到所有1和0的比特值,把他們理解成一個數據包(packet),從client的mac ip發從到Server的ip。client端的router會把數據包打上router的ip,以router的ip作為發件地址,發出。

  3 client的數據包在經過一些跳轉服務器,到Server端

  4 Server端的ip在收到client發來的數據包。

  5 Server端在讀取數據包的請求頭里的目標端口,然后把他傳遞到對應的應用,網絡服務器上。

  6 網絡服務器應用從服務器處理器收到數據,數據一般是一個GET請求,和請求文件index.html

  7 網絡服務器應用找到對應的html文件,把它打包成一個新的數據包再發送給client,然后通過它的本地router發出去,用同樣的過程回傳到client上。

 

 

 

 

 

解析復雜html:

  

 

 

 

 

 

 

 

 

這部分內容重點介紹網絡數據采集的基本原理:如何用 Python 從網絡服務器請求信息,如 何對服務器的響應進行基本處理,以及如何以自動化手段與網站進行交互。最終,你將輕 松游弋於網絡空間,創建出具有域名切換、信息收集以及信息存儲功能的爬蟲 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM