易車網實戰+【保姆級】:Feapder爬蟲框架入門教程


今天辰哥帶大家來看看一個爬蟲框架:Feapder,看完本文之后,別再說你不會Feapder了。本文辰哥將帶你了解什么是Feapder?、如何去創建一個Feapder入門項目(實戰:采集易車網轎車數據)。

其中實戰部分包括爬蟲數據和存儲到Mysql數據庫,讓大家能夠感受一下,數據從網頁經框架Feapder采集后,直接存儲到數據庫的過程。

之前我們已經用了Scrapy爬蟲框架來爬取數據(以『B站』為實戰案例!手把手教你掌握爬蟲必備框架『Scrapy』),今天來試試使用Feapder寫爬蟲是一種怎么樣的體驗請往下看!!!!!

01、Feapder框架

1.Feapder框架介紹

Feapder 是一款上手簡單、功能強大、快速、輕量級的爬蟲框架的Python爬蟲框架。支持輕量爬蟲、分布式爬蟲、批次爬蟲、爬蟲集成,以及完善的爬蟲報警機制。

具體feapder項目結構每一塊的功能是什么?怎么樣用?接着往下看,下面的實戰中有詳細的講解。

2.Feapder的安裝

feapder的安裝很簡單,通過下面的命令安裝即可!

pip install feapder

出現下面的界面說明feapder成功安裝!

feapder的介紹和環境安裝就完成了,下面開始真正去使用fepader來爬取易車網數據,並存儲到mysql數據庫。

02、實戰

1.新建feapder項目

通過下方的命令去創建一個名為:chenge_yc_spider的的爬蟲項目

feapder create -p chenge_yc_spider

創建好之后,我們看一下項目結構

2.編寫爬蟲

在終端中進入到項目(chenge_yc_spider)下的spiders文件夾下,通過下面的命令創建一個目標爬蟲文件(target_spider)

feapder create -s  target_spider

此刻項目結構如下:

編輯target_spider.py文件

這里實戰案例:采集易車網數據。直接執行這個py文件,先看一下請求有沒有沒問題。

可以看到請求返回響應200,說明請求成功。下一步我們開始解析網頁數據並設置爬蟲框架自動采集下一頁數據。

3.解析網頁

網頁結果(待采集的數據)如下:

通過查看源代碼,分析數據所對應的網頁標簽

通過網頁源碼可以分析,汽車列表數據都是在class為search-result-list下。每一個class為search-result-list-item表示一條數據,每一條數據下都有汽車對應的屬性(如:汽車名稱、價格等)

這里僅作為實戰案例去學習feapder爬蟲框架,因此這里就只爬取汽車名稱、價格;這兩個字段屬性。

4.創建Mysql數據庫

采集的數據需要存儲到數據庫(mysql)中,因此我們先來定義好數據庫和表

這里辰哥創建了一個數據庫:chenge_yc,並在里面建了應該表:t_yc,其表結構如上圖,這里如果不不熟悉mysql如何建立數據庫表的可以參考辰哥的這篇文章(實戰|教你用Python玩轉Mysql

在爬蟲項目中配置數據庫,打開根目錄下的setting.py文件

可以看到feapder支持多種數據庫的對接,咱們這里使用的是mysql,其配置如下:

接着在終端下,進入到根目錄下的items文件夾,執行下面命令生成數據庫表對於的item

feapder create -i t_yc

請注意:命令中的t_yc是對於數據庫表中的t_yc

最后生成 t_yc_item.py 文件:

里面的name和price則是對應數據庫中的字段。

5.提取網頁字段

上面已經獲取到網頁源碼,也知道數據所在的標簽,現在開始編寫代碼進行解析。

執行結果:

可以看到數據已經成功提出來,下一步將這些數據存儲到數據庫中。

6.存儲到數據庫

import feapder

引入剛剛的 t_yc_item.py,並創建對象TycItem。把爬取的name和price初始化到對象中。最后yieId TycItem,實際上就直接存儲到數據庫了(因為數據庫表和item是對應連接關系,這樣就直接存儲到數據庫了)。

這太方便了,連sql語句都省了,6666666666

執行結果如下:

查看數據庫:

同樣可以看到數據直接就存儲到數據庫中。大功告成!!!!!!

03、小結

相信看到這里的你已經完完全全掌握了 爬蟲框架: Feapder ,你不僅知道了什么是feapder,同時還學會了如何使用feapder。

此外實戰部分包括 爬蟲數據和存儲到Mysql數據庫,讓大家能夠感受一下,數據從網頁經框架Feapder采集后,直接存儲到數據庫的過程。

一定要 動手嘗試 一定要 動手嘗試 一定要 動手嘗試!


免責聲明!

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



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