试例网站:豆瓣电影TOP250:http://movie.douban.com/top250
关键点:在审查元素下查看后页即可以看到跳转的url。而且最后一页就此属性就没有了。
由于关键是实现分页,所以只爬取title:
目录:
items.py:
只需要加一个title就行
dbmspider.py:
# -*- coding: utf-8 -*-
from dbmovie.items import DbmovieItem
from scrapy.contrib.spiders import CrawlSpider
from scrapy.http import Request class TopMovie(CrawlSpider):
name = "dbmovie"
allowed_domains = ["movie.douban.com"]
start_urls=['http://movie.douban.com/top250']
url = 'http://movie.douban.com/top250'
def parse(self,response):
item = DbmovieItem()
Movie = response.xpath('//div[@class="info"]')
for eachMovie in Movie:
title = eachMovie.xpath('//a[contains(@href,"http://movie.douban.com/subject/")]/span[1]/text()').extract()
item['title'] = title
# print item
yield item nextLink = response.xpath('//span[@class="next"]/link/@href').extract()
if nextLink:
nextLink = nextLink[0]
print nextLink
yield Request(self.url+nextLink,callback = self.parse)
*todo:用start_request()方法以及callback函数双向循环实现。