scrapy框架组成及各部分作用

item pipelines:

用于存放需要存储数据的数据模型,一般格式为:

#需要存储多少中类型的数据就写多少行,一般是key_value组合
'数据名称,即·key' = scrapy.Field()

spiders

用于解析返回来的response

import scrapy
from 项目名称.items import QSBKItem
#QSBKItem 在items.py中的一个类,装有数据模型
......
item = QSBKItem('字典中对应的key'='items.py中对应的模型名称')
#返回item,item是一个字典的形式,将item返回给了engine
yield item

engine

爬虫引擎,作为各个模块的中转站

pipelines

用于存储和过滤由spider爬取回来的数据,比如可以将数据存入数据库中等等

#这个函数是一定需要的,用于接收返回过来的item数据,并且执行保存和过滤数据的操作
def process_item(self,item,spider):......
#可有可无,在打开爬虫时运行的函数,一般是在需要爬虫在打开时执行某些操作时才需要该函数
def open_spider(self,spider):......
#可有可无,在关闭爬虫时运行的函数,一般是在需要爬虫在关闭时执行某些操作时才需要该函数
def close_spider(self,spider):......

Download

用于执行spider发出的网页请求,并且从网页中进行下载

scheduler

用于调度,如调度多url的请求,重复url的处理等

爬取多页数据

self.p += 1
if self.p <= 10:next_url = 'https://edu.csdn.net/courses/o280/p'+str(self.p)url = response.urljoin(next_url)#创建绝对url地址#再次调用parse函数来进行解析next_urlyield scrapy.Request(url = url,callback = self.parse)

连接数据库的配置文件书写

ITEM_PIPELINES = {#后面的数字越小执行的顺序越靠前,是自动生成的educsdn.pipelines.Edu .... = 300,educsdn.mysqlines.Edu .... = 301
}MYSQL_HOST='localhost'MYSQL_DATABASE = '数据库的名称'MYSQL_USER = '用户名'MYSQL_PASS = '密码'MYSQL_PORT = '端口'#一般为3306

NO.1_python_scrapy组成爬取多页数据连接数据库配置文件书写相关推荐

  1. python爬虫爬取多个页面_Python 爬虫爬取多页数据

    但是,按照常规的爬取方法是不可行的,因为数据是分页的: 最关键的是,不管是第几页,浏览器地址栏都是不变的,所以每次爬虫只能爬取第一页数据.为了获取新数据的信息,点击F12,查看页面源代码,可以发现数据 ...

  2. python爬取多页数据_python爬虫实现爬取同一个网站的多页数据代码实例

    本篇文章小编给大家分享一下python爬虫实现爬取同一个网站的多页数据代码实例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 一.爬虫的目的 从网上获 ...

  3. Python 爬取北京二手房数据,分析北漂族买得起房吗?(附完整源码)

    来源:CSDN 本文约3500字,建议阅读9分钟. 本文根据Python爬取了赶集网北京二手房数据,R对爬取的二手房房价做线性回归分析,适合刚刚接触Python&R的同学们学习参考. 房价高是 ...

  4. Python爬虫 senlenium爬取拉勾网招聘数据,你学会了吗

    一.基本思路 目标url:https://www.lagou.com/ 用selenium爬虫实现,输入任意关键字,比如 python 数据分析 ,点击搜索,得到的有关岗位信息,爬取下来保存到Exce ...

  5. python xpath循环_Python爬虫 爬取北京二手房数据

    点击蓝字"python教程"关注我们哟! 前言 Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以小的给各位看官们准备了高价值Python学习视频教程及 ...

  6. python+selenium爬虫搜索今日头条文章并爬取文章相关数据(点赞、评论等)

    首先需要一个登录模块,由于今日头条需要登陆就可以搜索,因此这里不登陆,只获取页面 #打开浏览器(不登陆) def login():url = 'https://www.toutiao.com/'opt ...

  7. Python爬取拉勾网职位数据

    哈喽大家好,我是宁一,今天我们来讲讲Python爬虫,用Python来爬取拉勾网的数据,拉勾网的反爬虫技术做的很厉害,通过普通的header请求总是返回请求频繁的信息 所以我们主要来用selenium ...

  8. python二手房数据分析_Python 爬取北京二手房数据,分析北漂族买得起房吗? | 附完整源码...

    作者 徐麟 本文经授权转自公众号数据森麟(ID: shujusenlin) 房价高是北漂们一直关心的话题,本文就对北京的二手房数据进行了分析. 本文主要分为两部分:Python爬取赶集网北京二手房数据 ...

  9. Windows下利用python+selenium+firefox爬取动态网页数据(爬取东方财富网指数行情数据)

    由于之前用urlib和request发现只能获取静态网页数据,目前爬取动态网页有两种方法, (1)分析页面请求 (2)Selenium模拟浏览器行为(霸王硬上弓),本文讲的就是此方法 一.安装sele ...

最新文章

  1. SAP数据表(一)商品表
  2. python matplotlib_Python の Matplotlib
  3. hive+mysql+速度_半小时搞定Hadoop+Mysql+Hive+Python
  4. Python稳基修炼的经典案例4(计算机二级、初学者必须掌握的例题)
  5. db2查最新值的前一天值_2019年1月珠海最新房价出炉!看看你家房子值多少钱!...
  6. JavaScript面向对象实现
  7. java 读取mysql日志_如何在MySQL中查看日志文件?
  8. iview表格处理后台返回的字符串
  9. MacOS上的一些隐藏的快捷小技巧
  10. matlab2018a制图,MatLab 2018a 官方教程
  11. Docker CE 安装教程
  12. Flume 1.9.0用户指南
  13. 泰克MDO3104示波器_六合一示波器_无限多功能
  14. HCSC: Hierarchical Contrastive Selective Coding
  15. myeclipse中生成web service时出现异常Unable to create JAXBContext
  16. 一个程序员老总的年终总结2010版
  17. Python正则表达式用法详解
  18. Spring In Action 03 ---面向切面的Spring
  19. java命令 打 war包、解压war包
  20. 系统集成项目管理工程师2020年下半年下午案例分析题及答案

热门文章

  1. Linq 数据库操作(增删改查)
  2. C#环境下的钩子详解
  3. 小孔子文章管理系统V2.0发布测试
  4. Mybaits插入记录返回主键值
  5. 使用 Mesos 管理虚拟机
  6. 大型门户网站的可伸缩性架构设计
  7. spring-boot注解详解(四)
  8. css --- 伸缩布局,让图片居中
  9. javascript --- 再识闭包
  10. javascript --- JSON字符串化