七天合肥天气预报——爬虫实践

本文介绍了一个Python Scrapy爬虫项目,旨在爬取中国天气网的合肥七天天气预报数据,并将其保存到文本、JSON文件以及MySQL数据库中。详细讲述了目标分析、数据筛选、Scrapy框架的使用,以及如何编写items.py、蜘蛛、管道和Settings.py,最后展示了不同存储格式的结果。
摘要由CSDN通过智能技术生成

目的

写一个真正意义上一个爬虫,并将他爬取到的数据分别保存到文本文件,JSON,已经存在的MySQL的数据库中。

目标分析:

这次我们要爬的是中国天气网:http://www.weather.com.cn/

随便点开一个城市的天气比如合肥:http://www.weather.com.cn/weather/101220101.shtml

我们要爬取的就是图中的:合肥七天的前期预报:

七天合肥天气预报——爬虫实践

 

 

数据的筛选:

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

七天合肥天气预报——爬虫实践

 

 

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

<ul class = “t clearfix” >

我们用BS4,XPath的,CSS之类的选择器定位到这里,再筛选数据就行。

本着学习新知识的原则,文中的代码将会使用XPath的定位。

这里我们可以这样:

响应.xpath('// ul [@ class =“t clearfix”]')

Scrapy框架的实施:

  1. 创建scrapy项目和爬虫:
$ scrapy startproject天气
$ cd天气
$ scrapy genspider HFtianqi www.weather.com.cn/weather/ 101220101 .shtml

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

看一下当前的目录:

    。
├── scrapy .CFG 
└── 天气 
 ├──__ init__ 的.py 
 ├──__ pycache__ 
 │├──__ init__ .cpython-36 .pyc文件 
 │└── 设置.cpython-36 .pyc文件 
 ├── 项目。 PY 
 ├── 中间件的.py 
 ├── 管道的.py 
 ├── 设置的.py 
 └── 蜘蛛 
 ├── HFtianqi 的.py 
 ├──__ init__ 的.py 
 └──__ pycache__ 
 └──__init__ .cpython-36 .pyc
4个目录,11个文件

2.关系编写items.py:

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

    进口 scrapy
 类WeatherItem(scrapy。项目): 
 #在这里定义项目的字段,如:
 #name = scrapy。场()
 date = scrapy。场()
 温度= scrapy。场()
 天气= sc
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值