1.1 控制台列印
import scrapy
class doubanspider(scrapy.spider):
name = 'douban'
allwed_url = 'douban.com'
start_urls = ['']
def parse(self, response):
movie_name = response.xpath("//div[@class='item']//a/span[1]/text()").extract()
movie_core = response.xpath("//div[@class='star']/span[2]/text()").extract()
yield
執行以上**,我可以在控制看到:
2018-01-24 15:17:15 [scrapy.core.engine] info: spider closed (finished)1.2 以檔案的方式輸出
1.2.1 python原生方式
with open("movie.txt", 'wb') as f:
for n, c in zip(movie_name, movie_core):
str = n+":"+c+"\n"
f.write(str.encode())
1.2.2 以scrapy內建方式
scrapy 內建主要有四種:json,json lines,csv,xml
我們將結果用最常用的json匯出,命令如下:
scrapy crawl dmoz -o douban.json -t json
-o 後面是匯出檔名,-t 後面是匯出型別
2 提取內容的封裝item
scrapy程序可通過使用蜘蛛提取來自網頁中的資料。scrapy使用item類生成輸出物件用於收刮資料
item 物件是自定義的python字典,可以使用標準字典語法獲取某個屬性的值2.1 定義
import scrapy
class infoitem(scrapy.item):
# define the fields for your item here like:
movie_name = scrapy.field()
movie_core = scrapy.field()
2.2 使用def parse(self, response):
movie_name = response.xpath("//div[@class='item']//a/span[1]/text()").extract()
movie_core = response.xpath("//div[@class='star']/span[2]/text()").extract()
for n, c in zip(movie_name, movie_core):
movie = infoitem()
movie['movie_name'] = n
movie['movie_core'] = c
yield movie
爬蟲學習 Scrapy框架學習(四)
接之前的部落格內容 1 建立乙個工程和spider模板 2 編寫spider 3 編寫item pipeline 4 優化配置策略 1 reqeust類 向網路中提交請求的內容 request物件表示乙個http請求 由spider生成,由 執行 屬性或方法 說明 url request對應的請求u...
scrapy之爬蟲初體驗
本篇文章主要將怎樣建立乙個scrapy專案,以及完成第乙個scrapy爬蟲專案。首先是安裝scrapy模組,有很多原因都能導致scrapy模組安裝失敗,網上有很多教程讓怎樣安裝scrapy。親測比較有效的方法使用whl檔案安裝。不過有小夥伴也可以嘗試直接使用pip install scrapy命令進...
Python之scrapy框架爬蟲
scrapy命令詳解 可能是如今最全最簡單的scrapy命令解釋 明天上班,又要爬 現在每天做的工作有50 的時間爬 40 的時間清理資料,10 寫報告。若想自學資料分析,側重點很重要,我當初把大部分經歷放在了python的pandas numpymatplotlib上面,其他時間一部分放在sql身...