Scrapy爬蟲框架 二 匯出爬取結果

2021-08-09 10:35:26 字數 1610 閱讀 2619

·功能描述:爬取 豆瓣 電影 top-250,爬取內容(電影標題,評分人數,評分)

·編輯 items.py 檔案

# -*- coding: utf-8 -*-

import scrapy

class doubanmovieitem(scrapy.item):

# 排名

ranking = scrapy.field()

# 電影名稱

titles = scrapy.field()

# 評分

scores = scrapy.field()

persons= scrapy.field()

·編輯  資料夾spiders/ 下的 爬蟲檔案

from scrapy.spiders import spider

from scrapy import request

from scrapy_one.items import doubanmovieitem

#功能描述:爬取 豆瓣 電影 top-250,爬取內容(電影標題,評分人數,評分)

class blogspider(spider):

#爬蟲名稱,只有乙個

name = 'douban_top-250'

#偽裝瀏覽器

headers =

#設定目標位址,並呼叫headers

def start_requests(self):

url = ''

yield request(url, headers=self.headers)

#根據原始碼 選擇 爬取內容

def parse(self, response):

item = doubanmovieitem()

movies = response.xpath('//ol[@class="grid_view"]/li')#選擇 內容段

for movie in movies:#從內容段 拆分 內容

#備註:記得使用相對路徑 「.//」

item['ranking'] = movie.xpath('.//div[@class="pic"]/em/text()').extract()#排名

item['titles'] = movie.xpath('.//div[@class="hd"]/a/span[1]/text()').extract()#標題

item['persons'] = movie.xpath('.//div[@class="star"]/span[4]/text()').extract()#評分人數

item['scores'] = movie.xpath('.//div[@class="star"]/span[@class="rating_num"]/text()').extract()#評分

yield item

next_url = '' + next_url[0]

yield request(next_url, headers=self.headers)

·匯出csv:scrapy crawl douban_top-250 -o douban1-top250.csv

--備註:需在專案資料夾中執行

Scrapy爬蟲爬取電影天堂

目標 建立專案 scrapy startproject 爬蟲專案檔案的名字 生成 crawlspider 命令 scrapy genspider t crawl 爬蟲名字 爬蟲網域名稱 終端執行 scrapy crawl 爬蟲的名字 python操作mysql資料庫操作 爬蟲檔案 coding ut...

scrapy框架全站資料爬取

每個 都有很多頁碼,將 中某板塊下的全部頁碼對應的頁面資料進行爬取 實現方式有兩種 1 將所有頁面的url新增到start urls列表 不推薦 2 自行手動進行請求傳送 推薦 yield scrapy.request url,callback callback專門用做於資料解析 下面我們介紹第二種...

scrapy爬蟲框架 二

settings.py開啟pipeline,其中數字代表優先順序 值越小優先順序越高 configure item pipelines see item pipelines qsbk.py coding utf 8 import scrapy class qsbkspider scrapy.spid...