scrapy爬虫入门学习笔记(一)

scrapy爬虫入门学习笔记(一)

scrapy的安装很简单,网上有大量相关的教程,自行搜索。

1.scrapy框架

这里写图片描述
- 引擎(scrapy engine)
处理系统的数据流,触发事件
- 调度器(scheduler)
接受引擎发来的请求,压入队列,并在引擎再次请求时返回。可以想象成一个URL的优先队列,由它决定下一个抓取的网址是什么,并进行去重。
- 下载器(downloader)
用于下载网页内容,并返回给spider,下载器建立于twisted这个高效的异步模型之上
- 爬虫(spiders)
从特定网页爬取自己想要的信息,即item,提交给引擎
- 管道(pipeline)
处理从网页中提取的item,对信息进行存储、写等处理
- 下载中间件(downloader middlewares)
处理引擎和下载器之间的请求和响应
- 爬虫中间件(spider middlewares)
处理spider的响应输入和请求输出
- 调度中间件(scheduler middlewares)
对引擎的请求进行调度处理

2.scrapy项目文档目录

tree
这里写图片描述
- scrapy.cfg:项目的配置文件
- items.py:项目的目标文件。
- pipelines.py:项目的管道文件,作用就一个,处理item字段
- settings.py:项目的设置文件
- spiders:存储爬虫代码目录

items.py
- 定义结构化的字段,用于保存爬取到的数据,类似于python中的字典,但提供了额外的保护防止错误。
- 创建一个scrapy.Item类,定义类型为scrapy.Field的类属性来定义一个Item
- 创建一个ITcastItem类,构建Item模型

import scrapy
class ItcastItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    name=scrapy.Field()
    # l老师的职称
    title=scrapy.Field()
    # 老师信息
    info=scrapy.Field()
    # pass

itcast.py
- 爬虫python文件
- 定义一个ITcastSpider类,继承自scrapy.spider
- 需要name、start_urlds和parse
- parse函数中的xpath是xml文档查找信息的语言,可用于对xml元素和属性值进行遍历

class ItcastSpider(scrapy.Spider):
    # 爬虫名,启动爬虫时需要的必须参数
    name = 'itcast'
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值