最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • python爬虫可以用来看天气预报吗?

    正文概述    2020-07-23   490

    python爬虫可以用来看天气预报吗?

    就在前几天,温度就下降的很厉害,出门不多穿衣服,被风吹的酸爽大家都体验过。小编不知道小伙伴们有没有看天气预报的习惯,没有的话可以从本期的代码开始,要不要自己做一个天气预报表呢~在开始做表之前,我们肯定要准备一些数据和操作工具的,下面就一起来做天气预报表吧。


    1 构造URL列表

    每个月份的历史天气数据是通过一个 Javascript 文件获取的。因此,我们需要构造带爬取数据的 URL 列表,再批量爬取数据。

    # 构造2019全年的月份列表
    months = []
    for year in (2019,):
        for month in range(12):
            months.append("%d%02d"%(year, month+1))
    todo_urls = [
        "http://tianqi.2345.com/t/wea_history/js/"+month+"/58457_"+month+".js"
        for month in months
    ]


    2 批量下载数据

    使用 requests 库获取 js 文件中的数据,并存到 datas 变量中。

    import requests
    datas = []
    for url in todo_urls:
        r = requests.get(url, headers = headers)
        if r.status_code!=200:
            raise Exception()
        # 去除javascript前后的字符串,得到一个js格式的JSON
        data = r.text.lstrip("var weather_str=").rstrip(";")
    datas.append(data)


    3 解析数据

    我们从 js 文件获取的数据 json 格式存储的,需要使用 demjson 对数据进行解析。

    # 解析所有月份的数据
    all_datas = []
     
    for data in datas:
        tqInfos = demjson.decode(data)["tqInfo"]
    all_datas.extend([x for x in tqInfos if len(x)>0])


    4 将结果导入 csv 文件

    import csv
    with open('./hangzhou_tianqi_2019.csv', 'w', newline='', encoding='utf-8') as csv_file:
        writer = csv.writer(csv_file)
        columns = list(all_datas[0].keys())
        writer.writerow(columns)
        
        for data in all_datas:
            writer.writerow([data[column] for column in columns])


    5 结果展示

    python爬虫可以用来看天气预报吗?


    没想到我们也可以用python爬虫来看天气预报吧,这可比很早之前我们守在电视机前等待要方便多了,而且操作有趣。更多Python学习推荐:起源地模板网教学中心





    起源地下载网 » python爬虫可以用来看天气预报吗?

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元