利用scrapy爬取某城市天气预报的代码
时间: 2023-09-15 09:21:35 浏览: 107
scrapy爬取cosplay图片并保存到本地指定文件夹
下面是利用Scrapy爬取某城市天气预报的代码示例:
```python
import scrapy
class WeatherSpider(scrapy.Spider):
name = "weather"
start_urls = ["http://www.weather.com.cn/weather/101010100.shtml"]
def parse(self, response):
city = response.css(".crumbs.fl a::text").get()
date = response.css("#7d .t::text").getall()
weather = response.css("#7d .wea::text").getall()
temperature_high = response.css("#7d .tem span::text").getall()[::2]
temperature_low = response.css("#7d .tem span::text").getall()[1::2]
wind_direction = response.css("#7d .win i::text").getall()[::2]
wind_strength = response.css("#7d .win i::text").getall()[1::2]
for i in range(7):
yield {
"city": city,
"date": date[i],
"weather": weather[i],
"temperature_high": temperature_high[i],
"temperature_low": temperature_low[i],
"wind_direction": wind_direction[i],
"wind_strength": wind_strength[i]
}
```
说明:
- `name`:爬虫的名称。
- `start_urls`:爬虫的起始URL。
- `parse`:解析响应的方法。
- `response.css()`:使用CSS选择器获取页面元素。
- `yield`:返回一个字典,包含天气信息。
在终端中运行以下命令即可启动爬虫:
```bash
scrapy runspider weather_spider.py -o weather.csv
```
其中,`-o` 参数指定了输出文件的格式和路径。这里我们输出为 CSV 格式的文件 `weather.csv`。
阅读全文