爬虫框架scrapy,爬取豆瓣电影top250

本文介绍了如何使用爬虫框架scrapy创建项目、定义Item、设置User-Agent以避免403错误,并详细说明了如何爬取和处理豆瓣电影Top250的数据,包括在命令行中运行scrapy crawl命令以及数据的保存和处理。通过设置ITEM_PIPELINES,数据在管道中进行进一步处理。
摘要由CSDN通过智能技术生成

1 . 新建项目

进入打算存储代码的目录,命令行运行如下语句

scrapy startproject tutorial

2 . 定义Item

import scrapy

class DoubanItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    title=scrapy.Field()   #用来存储豆瓣电影标题
    star=scrapy.Field()    #用来存储豆瓣电影评分

3 . 新建spyder

import scrapy
#from douban.items import DoubanItem

class DoubanSpider(scrapy.Spider):
    name = "douban"     #爬虫名称
    allowed_domains = ["https://movie.douban.com/"]
    start_urls = ["https://movie.douban.com/top250"]

    def parse(self, response):
        for sel in response.xpath('//div[@class="info"]'):
            #item = DmozItem()
            title = sel.xpath('div[@class="hd"]/a/span/text()').extract()[0]  #不加[0]会变成Unicode形式
            star= sel.xpath('div[@class="bd"]/div[@class="star"]/span[@class="rating_num"]/text()').extract()[0]  
            print star,title

4 . 防止爬虫被屏蔽,伪装user_agent

USER_AGENT = ‘Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.54 Safari/536.5’

否则会报403错误

2016-12-31 23:20:16 [scrapy] INFO: Spider opened
2016-12-31 23:20:17 [scrapy] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2016-12-31 23:20:17 [scrapy] DEBUG: Telnet console listening on 127.0.0.1:6023
2016-12-31 23:20:17 [scrap
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值