pythonScrapy爬取天气预报,零基础的你也可以快速

python Scrapy爬取天气预报,零基础的你也可以快速上手

目的

写一个真正意义上一个爬虫,并将他爬取到的数据分别保存到txt、json、已经存在的mysql数据库中。

目标分析:

python Scrapy爬取天气预报,零基础的你也可以快速上手

python Scrapy爬取天气预报,零基础的你也可以快速上手

初学者有什么不懂的可以私信我——我刚整理了一套2021最新的0基础入门教程,无私分享,获取方法:关注小编CSDN,发私信:【学习资料】 即可获取,内附:开发工具和安装包,以及系统学习路线图。

数据的筛选:

我们使用chrome开发者工具,模拟鼠标定位到相对应位置:

python Scrapy爬取天气预报,零基础的你也可以快速上手

可以看到我们需要的数据,全都包裹在

python Scrapy爬取天气预报,零基础的你也可以快速上手

这样我们就已经将准备工作做完了。

看一下当前的目录:

python Scrapy爬取天气预报,零基础的你也可以快速上手

编写items.py:

这次我们来先编写items,十分的简单,只需要将希望获取的字段名填写进去:

python Scrapy爬取天气预报,零基础的你也可以快速上手

编写Spider:

这个部分使我们整个爬虫的核心!!

主要目的是:

将Downloader发给我们的Response里筛选数据,并返回给PIPELINE处理

下面我们来看一下代码:

python Scrapy爬取天气预报,零基础的你也可以快速上手

编写PIPELINE:

我们知道,pipelines.py是用来处理收尾爬虫抓到的数据的,

一般情况下,我们会将数据存到本地:

文本形式: 最基本的存储方式

json格式 :方便调用

数据库: 数据量比较大时选择的存储方式

TXT(文本)格式:

python Scrapy爬取天气预报,零基础的你也可以快速上手

json格式数据:

我们想要输出json格式的数据,最方便的是在PIPELINE里自定义一个class:

python Scrapy爬取天气预报,零基础的你也可以快速上手

数据库格式(mysql):

Python对市面上各种各样的数据库的操作都有良好的支持,所以想学的同学,有必要听一下这位老师的课、领取python福利奥,想学的同学可以到梦雅老师的围鑫(同音):前边一组是:mengy ,后边一组是:7762,把以上两组字母按照先后顺序组合起来即可,她会安排学习的。

但是现在一般比较常用的免费数据库mysql。

在本地安装mysql:

linux和mac都有很强大的包管理软件,如apt,brew等等

window 可以直接去官网下载安装包。

由于我是Mac,所以我是说Mac的安装方式了。

python Scrapy爬取天气预报,零基础的你也可以快速上手

来看一下weather表长啥样:

python Scrapy爬取天气预报,零基础的你也可以快速上手

最后我们编辑与一下代码:

python Scrapy爬取天气预报,零基础的你也可以快速上手

编写Settings.py

我们需要在Settings.py将我们写好的PIPELINE添加进去,

scrapy才能够跑起来

这里只需要增加一个dict格式的ITEM_PIPELINES,

数字value可以自定义,数字越小的优先处理

python Scrapy爬取天气预报,零基础的你也可以快速上手

让项目跑起来:

结果展示:

文本格式:

python Scrapy爬取天气预报,零基础的你也可以快速上手

json格式:

python Scrapy爬取天气预报,零基础的你也可以快速上手

数据库格式:

python Scrapy爬取天气预报,零基础的你也可以快速上手

这次的例子就到这里了,主要介绍如何通过自定义PIPELINE来将爬取的数据以不同的方式保存。