回覆列表
  • 1 # 畫樓空

    首先說下區別 scrapy框架是一個完整的爬蟲框架,內部使用twisted來實現大量HTTP請求的非同步,並支援xpath資料解析。雖然功能強大,但是學習曲線略微偏高。requests庫是簡單的HTTP請求庫,上手很快,但是要配合bs4進行資料解析。而requests要實現非同步請求,還要配合gevent庫或者是python的協程。這些都需要自己組合,拼裝。 總的來說,簡單的爬蟲用requests+bs4可以玩。如果是大量爬蟲,要精細化設計的話,還是用scrapy較好。

  • 2 # Bean蠶豆

    個人比較推薦scrapy,這個實現是太方便了,接觸後感覺-這框架太神了,都不用怎麼寫程式碼,一個爬蟲就寫成了。下面分享一下我自己的使用過程。

    最近看到詩詞想爬取,正好前段時間有學習scrapy,想那就結合scrapy做一個爬蟲吧。想著就動手了,首先選擇的目標網站是詩詞名句網。個人比較喜歡辛棄疾,就以辛棄疾的詩詞為爬取物件。

    設定起始網站,做為爬蟲的種子連結-http://www.shicimingju.com/chaxun/zuozhe/44.html

    爬蟲需要種子連結,找到辛棄疾的詩詞列表開始頁面,作為種子連結,即爬蟲開始的爬取的頁面。

    爬蟲程式碼的編寫,這也是我們的核心,因為scrapy框架提供給我們的關注點也是在這裡,scrapy讓我們更加關注業務邏輯的本身

    觀察頁面,可以看到頁面透過下一頁一步一步地翻頁,羅列所有的詩詞,在每個列表項中,可以透過具體的連結到達詩詞的詳情頁面,裡面記錄了詩詞的詳細內容。根據這樣的邏輯,我們可以如下寫爬蟲的程式碼。

    當然,我們也需要將爬取的結果儲存到伺服器中,在這裡我選擇的是Mongodb,這部分也挺方便的,簡單的寫一個類,就可以實現資料寫入到Mongodb中。

    以上,個人使用scrapy爬取詩詞網站中辛棄疾詩詞的過程,羅列了核心的程式碼,整體上看,程式碼量真的很少,1百多行的程式碼就夠了。所以,個人還是比較偏向於scrapys框架,讓我們更多地關注業務本身。

  • 3 # 一把勺子

    看做什麼事情了,如果你只是簡單的實現幾個請求響應,從響應裡取少量資料,requests、beautiful soup也可以用的,畢竟簡單,寫幾行程式碼出資料就萬事了,但是如果你要做一個工程,涉及複雜邏輯,涉及資料處理、儲存等一系列工作的,用scrapy毫無疑問,它可以幫你省去很多不必要的麻煩,可以讓你高效、便捷的完成相關工作任務。

  • 中秋節和大豐收的關聯?
  • "地攤經濟"是苗頭,但是地攤經濟的利與弊是什麼?