scrapy框架学习(二)Items

 

Item 对象是种简单的容器,保存了爬取到得数据

1.打开并修改items.py文件,新建了两个属性 name、url分别存储电影名和对应的相对地址

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

# Define here the models for your scraped items
#
# See documentation in:
# https://doc.scrapy.org/en/latest/topics/items.html

import scrapy

class SamzhuItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    name = scrapy.Field()
    url = scrapy.Field()

2.修改one_spider.py文件,可以将我们抓取的数据放入到对应的容器中去(xpath与css的具体用法先略过)

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

import scrapy
from samzhu.items import SamzhuItem

class SamSpider(scrapy.Spider):
    name = "sam"
    start_urls = [
        "https://maoyan.com/board"
    ]
    def parse(self, response):
        print(response.text)
        print('>'*50,'sam')
        for sel in response.xpath('//*[@id="app"]/div/div/div/dl/dd'):
            item = SamzhuItem()
            item['name'] = sel.xpath('div/div/div[1]/p[1]/a/@title').extract()
            item['url'] = sel.xpath('div/div/div[1]/p[1]/a/@href').extract()
            print(item)
        print('>'*50,'end')

3.运行 scrapy crawl sam

scrapy框架学习(二)Items_第1张图片

 


小结:

item对象主要是用来存储爬去数据,并对数据进行处理等等。

item对象类似于Python的字典,可以使用dict API进行获取参数,如下。此处只是简单介绍怎么调用,详细方法参考文档。

API 说明
product.keys()
获取所有键值
product.items()
获取所有键-值

 

你可能感兴趣的:(python,爬虫)