Python-正则表达式-天气爬虫-存储到CSV文件

本文介绍了如何使用Python的正则表达式爬取天气历史数据,特别是针对http://www.tianqihoubao.com上的成都2018年2月天气数据。在解析过程中,重点讨论了如何正确处理换行符以确保数据的完整性和准确性。最后,这些爬取的数据被存储到CSV文件中,便于进一步分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

爬取的网址为http://www.tianqihoubao.com/lishi/chengdu/month/201802.html。

在用正则表达式爬取时,要注意对换行符的处理。

import csv
import re
import requests
import time

def urlPool():
    '''构建url池'''
    urlList = []
    for i in range(1, 13):
        if i < 10:
        #   %字符串的替换
            urlList.append('http://www.tianqihoubao.com/lishi/chengdu/month/20180%s.html' % i)
        else:
            urlList.append('http://www.tianqihoubao.com/lishi/chengdu/month/2018%s.html' % i)
    return urlList

def getHtml(url):
    '''构造请求url函数,返回html文本'''
    try:
        headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'
        }
        response = requests.get(url, headers=headers)
        if response.status_code == 200:
            return response.text
    except requests.RequestException:
        return None

def getWeather(html):
    '''用正则表达式提取信息'''
    
    # 利用compile()函数预先编译, re.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值