python基礎爬蟲的框架以及詳細的運行流程

網絡爬蟲是什麼?

網絡爬蟲就是:請求網站並提取數據的自動化程序python

網絡爬蟲能作什麼?

網絡爬蟲被普遍用於互聯網搜索引擎或其餘相似網站,能夠自動採集全部其可以訪問到的頁面內容,以獲取或更新這些網站的內容和檢索方式。
數據庫

網絡爬蟲還被用於爬取各個網站的數據,進行分析、預測
近幾年來,大量的企業和我的開始使用網絡爬蟲採集互聯網的公開數據,進行數據分析,進一步達到商業目的。瀏覽器

利用網絡爬蟲能從網上爬取什麼數據?

能夠好不吹噓的說,平時從瀏覽器瀏覽的全部數據都能被爬取下來。網絡

網絡爬蟲是否合法?

上面說到了爬蟲能夠爬取任何數據,那麼,爬取數據這種行爲是否合法?
目前關於爬取數據的法律還在創建和完善中,若是爬取的數據屬於我的使用或者科研範疇,基本不存在什麼問題;一旦要用於商業用途就得注意了,有可能會違法。互聯網界對於網絡爬蟲也創建了必定的道德規範(Robots協議)來約束。
這裏具體看下Robots協議
Robots協議規定各個搜索引擎哪些頁面能夠抓取,哪些頁面不能抓取,Robots協議雖然沒有被寫入法律,可是每個爬蟲都應該遵照這項協議。
下面是淘寶網的robots協議:

從圖中咱們就能夠發現淘寶網對百度的爬蟲引擎作出了規定,然而百度也會遵照這些規定,不信你能夠試試從百度是找不到淘寶裏的商品信息的。python爬蟲

python爬蟲的基本流程

Python爬蟲的基本流程很是簡單,主要能夠分爲三部分:(1)獲取網頁;(2)解析網頁(提取數據);(3)存儲數據。

簡單的介紹下這三部分:框架

  • 獲取網頁就是給一個網址發送請求,該網址會返回整個網頁的數據。相似於在瀏覽器中輸入網址並按回車鍵,而後能夠看到網站的整個頁面。
  • 解析網頁就是從整個網頁的數據中提取想要的數據。
  • 存儲數據顧名思義就是把數據存儲下來,咱們能夠存儲在文本中,也能夠存儲到數據庫中。

基礎爬蟲的框架以及詳細的運行流程

基礎爬蟲框架主要包括五大模塊,分別是爬蟲調度器、URL管理器、HTML下載器、HTML解析器、數據存儲器。這五大模塊之間的關係以下圖所示:
網站

下來咱們來分析這五大模塊之間的功能:搜索引擎

  • 爬蟲調度器主要負責統籌其餘四個模塊的協調工做。
  • URL管理器負責管理URL連接,維護已經爬取的URL集合和未爬取的URL集合, 提供獲取新URL連接的接口。
  • HTML下載器用於從URL管理器中獲取未爬取的URL連接並下載HTML網頁。
  • HTML解析器用於從HTML下載器中獲取已經下載的HTML網頁,並從中解析出新 的URL連接交給URL管理器,解析出有效數據交給數據存儲器。
  • 數據存儲器用於將HTML解析器解析出來的數據經過文件或者數據庫的形式存儲起來。

詳細的運行流程以下圖所示:
spa

相關文章
相關標籤/搜索