美文网首页大数据 爬虫Python AI Sql
学习Python一个星期用Scrapy爬取天气预报实践一番

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

作者: 叶子编程 | 来源:发表于2018-08-30 13:27 被阅读1次

    目的

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

    目标分析:

    数据的筛选:

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

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

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

    看一下当前的目录:

    编写items.py:

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

    编写Spider:

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

    主要目的是:

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

    下面我们来看一下代码:

    编写PIPELINE:

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

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

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

    json格式 :方便调用

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

    TXT(文本)格式:关于怎么快速学Python,可以加下小编的Python学习qun:699+749+852,不管你是小白还是大牛,小编我都欢迎,不定期分享干货,欢迎初学和进阶中的小伙伴。每天晚上20:00都会开直播给大家分享Python知识和路线方法,qun里会不定期更新最新的教程

    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来将爬取的数据以不同的方式保存。

    相关文章

      网友评论

        本文标题:学习Python一个星期用Scrapy爬取天气预报实践一番

        本文链接:https://www.haomeiwen.com/subject/jdbrwftx.html