专栏首页python小白到大牛学习Python一个星期用Scrapy爬取天气预报实践一番
原创

学习Python一个星期用Scrapy爬取天气预报实践一番

目的

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

目标分析:

数据的筛选:

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

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

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

看一下当前的目录:

编写items.py:

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

编写Spider:

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

主要目的是:

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

下面我们来看一下代码:

编写PIPELINE:

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

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

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

json格式 :方便调用

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

TXT(文本)格式:

json格式数据:

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

数据库格式(mysql):

Python对市面上各种各样的数据库的操作都有良好的支持,

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

在本地安装mysql:

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

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

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

来看一下weather表长啥样:

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

编写Settings.py

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

scrapy才能够跑起来

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

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

让项目跑起来:

结果展示:

文本格式:

json格式:

数据库格式:

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

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 从零开始系统化的学习写Python爬虫

    主要是记录一下自己写Python爬虫的经过与心得。 同时也是为了分享一下如何能更高效率的学习写爬虫。 IDE:Vscode Python版本: 3.6

    HACK学习
  • 从零开始写Python爬虫

    具体的步骤: 一:Beautiful Soup 爬虫 requests库的安装与使用

    緣來
  • ​Python爬虫 --- 2.4 Scrapy之天气预报爬虫实践

    原文链接:https://www.fkomm.cn/article/2018/8/5/31.html

    圆方圆PYTHON学院
  • Scrapy框架之爬取城市天气预报

    1.项目初始化2.提取数据 2.1 原理分析 2.2 数据抽取 2.3 自定义spider3.存储数据 3.1 修改settings.py 3.2 数据存储4....

    公众号guangcity
  • 手把手教你使用Python+scrapy爬取山东各城市天气预报

    1、在命令提示符环境使用pip install scrapy命令安装Python扩展库scrapy,详见Python使用Scrapy爬虫框架爬取天涯社区小说“大...

    Python小屋屋主
  • 如何在一个月内学会Python爬取大规模数据

    慕白
  • 零基础如何系统的学习Python? 分成7个阶段学习

    目前信息化产业发展势头很好,互联网就成为了很多普通人想要涉及的行业,因为相比于传统行业,互联网行业涨薪幅度大,机会也多,所以就会大批的人想要转行来学习Pytho...

    python学习教程
  • 不踩坑的Python爬虫:如何在一个月内学会爬取大规模数据

    Python爬虫为什么受欢迎 如果你仔细观察,就不难发现,懂爬虫、学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这样的...

    Python中文社区
  • 不踩坑的Python爬虫:如何在一个月内学会爬取大规模数据

    Python爬虫为什么受欢迎 如果你仔细观察,就不难发现,懂爬虫、学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这样的...

    机器学习AI算法工程

扫码关注云+社区

领取腾讯云代金券