Scrapy框架的安装和使用

本文详细介绍了如何安装Scrapy框架,并通过创建项目、定义spider、Item、解析Response、请求下一页内容以及使用Item Pipeline保存爬取结果到不同格式的文件。在Scrapy项目中,创建spider、Item用于定义爬取目标和数据结构,parse方法用于解析响应,Request用于生成后续请求。此外,还展示了如何利用Item Pipeline对爬取结果进行处理并存入MongoDB。
摘要由CSDN通过智能技术生成

https://github.com/Python3WebSpider/Python3WebSpider/blob/master/13.2-Scrapy%E5%85%A5%E9%97%A8.md

安装Scrapy 需要先安装 lxml pyOpenSSL Twisted PyWin32
安装好上述模块以后 pip install Scrapy

验证安装及创建一个Scrapy项目 如果提示权限问题 可以加sudo运行该命令
在这里插入图片描述
在这里插入图片描述

创建spider

在这里插入图片描述

执行完毕后 spiders文件夹中多了一个quotes,py的文件
在这里插入图片描述

name: 每个项目唯一的名字 用来区分spider
allowed_domains : 允许爬取的域名 如果初始或者后续请求链接不是这个域名下的请求会被过滤掉
start_urls : 包含了spider在启动时爬取的url列表 初始请求由它来定义
parse() : start_urls中的链接请求完成下载执行后 的结果会作为唯一的参数传递给这个方法 该方法负责解析返回的响应 提取数据 或进一步生成要处理的请求

创建Item

item保存爬取数据的容器
需要继承 scrapy.item 类 定义类型为Field的字段
修改刚刚创建的项目中的 item.py 文件 定义三个字段

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

import scrapy


class  QuoteItem(scrapy.Item):
    #define the fields for your item here like:
    # name = scrapy.Field()
    text = scrapy.Field()
    author = scrapy.Field()
    tags = scrapy.Field()
  

解析Response

修改 spider.py中的parse()函数 并使用 Item

import scrapy


class QuotesSpider(scrapy.Spider):
    name = 'quotes'
    allowed_domains = ['quotes.toscrape.com']
    start_urls = ['http://quotes.toscrape.com/']

    def parse(self, response):
        quotes = response.css('.quote')
        for quote in quotes:
            item = QuoteItem()
            item['text'] = quote.css(
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值