Scrapy爬虫实战:抓取猫眼电影排行榜数据
以下是一个简化的代码实例,展示了如何使用Scrapy框架来创建一个爬虫,该爬虫可以抓取猫眼电影排行榜的电影信息。
import scrapy
class MovieSpider(scrapy.Spider):
name = 'movie'
allowed_domains = ['maoyan.com']
start_urls = ['http://maoyan.com/board/4']
def parse(self, response):
movie_list = response.css('#app > div > div.board-wrapper > div > ul > li')
for movie in movie_list:
item = {
'ranking': movie.css('i::text').extract_first(),
'movie_name': movie.css('a > div.name::text').extract_first(),
'movie_score': movie.css('a > div.score::text').extract_first(),
'movie_link': movie.css('a::attr(href)').extract_first(),
}
yield item
# 获取下一页链接并进行爬取
next_page_url = response.css('#paginator > a.next::attr(href)').extract_first
if next_page_url:
yield response.follow(next_page_url, self.parse)
这段代码定义了一个名为movie
的爬虫,它将从猫眼电影排行榜的第一页开始爬取数据。爬虫会抓取每部电影的排名、名称、评分和详情页链接,并通过yield
提供给Scrapy的Item Pipeline进行后续处理。如果存在下一页,爬虫会生成一个跟进请求来爬取下一页的数据。
评论已关闭