1. 程式人生 > >第一回:Scrapy的試水

第一回:Scrapy的試水

功能 之前 sql數據庫 from mysql 完成 域名 mysql數據庫 是不是

前言:今天算是見到Scrapy的第二天,之前只是偶爾查了查,對於這個框架的各種解釋,我-----都-----看------不------懂----,沒辦法,見面就是剛。

  目的:如題,試水

  目標:《伯樂在線》python版(不要問我怎麽老是惹伯樂,好欺負)的“實踐項目”的一頁的文章標題和簡介,導入Mysql數據庫。

  配置:win7+python3.4+Scrapy1.4+phpStudy(主要用它的mysql數據庫)

  完成時間:2017-7-27(歷時2天)

  作者:羽凡

-------------------------------------------------------------------無敵的-------------------------------------------------------------------------------------------------------------------------

正文:

scrapy的安裝我就不說了,有事沒事問度娘。。。。

第一步:創建項目,命令:scrapy startproject bole

技術分享

成功的話就生成了這些

技術分享

今天除了第三和第五個沒用到,其他都有修改。

看看咋們的目標狀態:

技術分享

我要的是“圖解機器學習。。。。”和“開發人員經常說。。。。”這兩項(先簡單點)

第二步:修改items.py文件

技術分享

用過django的可能覺得熟悉這個東西,這就像個中轉或是暫時倉庫,你從網頁上找到想要的東西總得放個地方吧,這裏就為它們開辟了空間,這個空間在爬蟲主體(spider文件夾裏)會被引用(from ..items import BoleItem),空間開辟好了,items.py就改好了。

第三步:創建爬蟲主體。命令:scrapy genspider -t basic Bole jobbole.com

技術分享

關於命令中的有些參數我也不太清楚,genspider-生成爬蟲 -t :不知道 basic:不知道 Bole:爬蟲名字 jobbole.com:目標域名

該命令在spider文件夾下生成Bole.py

經過修改後的樣子

技術分享

這裏start_urls是第一頁的網址。下面的parse函數是對返回結果的處理,我們需要的數據也是在這裏產生的,這裏用到了xpath來搜索數據,功能與re正則差不多,還可以看到在items.py中開辟的空間在這裏用到了。(假如把return item 換成 print(item[‘title’])就可以看到抓到的標題了)

加餐第四步:數據導入mysql數據庫(修改setting.py和pipelines.py文件)

先是pipelines.py:

技術分享

被我註釋掉的是鏈接數據庫並創建相應的庫/表/項。如果你是手工用SQL來創建好的,就註釋掉吧,要不然還要修改下,這裏將中轉的東西通過SQL指令導入數據庫裏了

接下來修改setting.py使上面的修改管用:

技術分享

找到這行,並解除註釋,就像開了水龍頭。。。。

開啟Mysql,運行爬蟲:

技術分享

技術分享

--nolog是為了不打印一串日誌記錄,如果排查錯誤就不加。

技術分享

以上是結果。

-----------------------------------------------------------------------無敵的我-----------------------------------------------------------------------------------------------------------------------------------

是不是寫的很水,我自己都尷尬了,沒辦法,才真正自學兩天,明天,哦不,今天在理理思路,期待第二回早點寫來。

                困了,睡覺。 By:羽凡 2017-7-28-0:33

 

第一回:Scrapy的試水