我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python 爬取天气网卫星图片

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python 爬取天气网卫星图片

目录
  • 项目地址:
  • 代码部分
    • 下载生成文件功能
    • 创建文件夹
    • 生成时间列表
    • 生成下载URL列表
    • 主函数
  • 爬取效果

    项目地址:

    https://github.com/MrWayneLee/weather-demo

    代码部分

    下载生成文件功能

    
    # 下载并生成文件
    def downloadImg(imgDate, imgURLs, pathName):
        a,s,f = 0,0,0
        timeStart = time.time()
        while a < len(imgURLs):
            req = requests.get(imgURLs[a])
            imgName = str(imgURLs[a])[-13:-9]
            print(str("开始请求" + imgDate + " " + imgName + "的数据"))
            if req.status_code == 200:
                open(pathName + '\\' + os.path.basename(imgName) + '.png', 'wb').write(req.content)
                print("数据" + imgDate + " " + imgName + "下载完成")
                s += 1
                del req
            elif req.status_code == 404:
                print("数据" + imgDate + " " + imgName + "不存在")
                f += 1
            a += 1
        timeEnd = time.time()
        totalTime = round(timeEnd - timeStart, 2)
        print("全部数据请求完成!总耗时:",totalTime,"秒")
        print("共请求", a, "次;成功", s, "次;失败", f, "次")

    创建文件夹

    
    def createFolder(pathName):
        imgName_Year = pathName[0:4]
        imgName_Month = pathName[4:6]
        imgName_Day = pathName[6:8]
        imgName_date = imgName_Year + '-' + imgName_Month + '-' + imgName_Day
    
        mainPath = 'F:\\[Wayne Lee]\\学习资料\\Python\\爬取图像'
        newPathName = mainPath + '\\' + imgName_date
        realPath = newPathName + '\\'
    
        isExists = os.path.exists(newPathName)
    
        if not isExists:
            os.makedirs(newPathName)
            print("新文件夹 [" + imgName_date + "] 创建成功")
            return realPath
        else:
            print(pathName + "文件夹已存在")
            return realPath

    生成时间列表

    
    def generateTime(imgUrl):
        timeList = []
        imgUrlList = []
        h,j = 0,0
        while h < 24:
            m = 0
            while m < 60:
                timeList.append("{:0>4d}".format(h * 100 + m))
                m += 15
            h += 1
        # print(timeList)
        # print(len(timeList))
        while j < len(timeList):
            imgUrlList.append(str(imgUrl + timeList[j] + "00000.JPG"))
            # print(timeList[j])
            j += 1
        return imgUrlList
        # print(imgUrlList)
        # print(len(imgUrlList))

    生成下载URL列表

    
    def downloadUrl(imgDate):
        imgUrl = "http://image.nmc.cn/product/" + imgDate[0:4] + "/" + imgDate[4:6] + "/" + imgDate[6:8] + "/WXBL/SEVP_NSMC_WXBL_FY4A_ETCC_ACHN_LNO_PY_" + imgDate # + "0000" +"00000.JPG"
        URLlist = list(generateTime(imgUrl))
        return URLlist

    主函数

    
    # 主函数
    if __name__ == '__main__':
        # imgUrl = "http://image.nmc.cn/product/2020/04/11/WXBL/SEVP_NSMC_WXBL_FY4A_ETCC_ACHN_LNO_PY_20200411044500000.JPG"
        # imgUrl = "http://image.nmc.cn/product/2020/04/11/WXBL/SEVP_NSMC_WXBL_FY4A_ETCC_ACHN_LNO_PY_20200411"
        # imgName = imgUrl[-21:-9]
    
        while True:
            print("[1]手动输入日期")
            print("[2]获取当天日期")
            print("[3]退出程序")
            choose = str(input("你的选择:"))
            if choose == "1":
                imgDate = str(input("请输入日期[如20200411]:"))
                urlList = list(downloadUrl(imgDate))
                break
            elif choose == "2":
                imgDate = time.strftime("%Y%m%d",time.localtime())
                urlList = list(downloadUrl(imgDate))
                break
            elif choose == "3":
                break
            else:
                print("你的选择有误!请重试")

    开始下载

    
        pathName = createFolder(imgDate)
        # 开始下载
        downloadImg(imgDate, urlList, pathName)

    完整代码

    
    import requests
    import time
    import datetime
    import os
    
    # 下载并生成文件
    def downloadImg(imgDate, imgURLs, pathName):
        a,s,f = 0,0,0
        timeStart = time.time()
        while a < len(imgURLs):
            req = requests.get(imgURLs[a])
            imgName = str(imgURLs[a])[-13:-9]
            print(str("开始请求" + imgDate + " " + imgName + "的数据"))
            if req.status_code == 200:
                open(pathName + '\\' + os.path.basename(imgName) + '.png', 'wb').write(req.content)
                print("数据" + imgDate + " " + imgName + "下载完成")
                s += 1
                del req
            elif req.status_code == 404:
                print("数据" + imgDate + " " + imgName + "不存在")
                f += 1
            a += 1
        timeEnd = time.time()
        totalTime = round(timeEnd - timeStart, 2)
        print("全部数据请求完成!总耗时:",totalTime,"秒")
        print("共请求", a, "次;成功", s, "次;失败", f, "次")
    
    # 创建文件夹
    def createFolder(pathName):
        imgName_Year = pathName[0:4]
        imgName_Month = pathName[4:6]
        imgName_Day = pathName[6:8]
        imgName_date = imgName_Year + '-' + imgName_Month + '-' + imgName_Day
    
        mainPath = 'F:\\[Wayne Lee]\\学习资料\\Python\\爬取图像'
        newPathName = mainPath + '\\' + imgName_date
        realPath = newPathName + '\\'
    
        isExists = os.path.exists(newPathName)
    
        if not isExists:
            os.makedirs(newPathName)
            print("新文件夹 [" + imgName_date + "] 创建成功")
            return realPath
        else:
            print(pathName + "文件夹已存在")
            return realPath
    
    # 生成时间列表
    def generateTime(imgUrl):
        timeList = []
        imgUrlList = []
        h,j = 0,0
        while h < 24:
            m = 0
            while m < 60:
                timeList.append("{:0>4d}".format(h * 100 + m))
                m += 15
            h += 1
        # print(timeList)
        # print(len(timeList))
        while j < len(timeList):
            imgUrlList.append(str(imgUrl + timeList[j] + "00000.JPG"))
            # print(timeList[j])
            j += 1
        return imgUrlList
        # print(imgUrlList)
        # print(len(imgUrlList))
    
    # 生成下载URL列表
    def downloadUrl(imgDate):
        imgUrl = "http://image.nmc.cn/product/" + imgDate[0:4] + "/" + imgDate[4:6] + "/" + imgDate[6:8] + "/WXBL/SEVP_NSMC_WXBL_FY4A_ETCC_ACHN_LNO_PY_" + imgDate # + "0000" +"00000.JPG"
        URLlist = list(generateTime(imgUrl))
        return URLlist
    
    # 主函数
    if __name__ == '__main__':
        # imgUrl = "http://image.nmc.cn/product/2020/04/11/WXBL/SEVP_NSMC_WXBL_FY4A_ETCC_ACHN_LNO_PY_20200411044500000.JPG"
        # imgUrl = "http://image.nmc.cn/product/2020/04/11/WXBL/SEVP_NSMC_WXBL_FY4A_ETCC_ACHN_LNO_PY_20200411"
        # imgName = imgUrl[-21:-9]
    
        while True:
            print("[1]手动输入日期")
            print("[2]获取当天日期")
            print("[3]退出程序")
            choose = str(input("你的选择:"))
            if choose == "1":
                imgDate = str(input("请输入日期[如20200411]:"))
                urlList = list(downloadUrl(imgDate))
                break
            elif choose == "2":
                imgDate = time.strftime("%Y%m%d",time.localtime())
                urlList = list(downloadUrl(imgDate))
                break
            elif choose == "3":
                break
            else:
                print("你的选择有误!请重试")
    
        # 创建文件夹
        pathName = createFolder(imgDate)
        # 开始下载
        downloadImg(imgDate, urlList, pathName)

    爬取效果

    以上就是python 爬取天气网卫星图片的详细内容,更多关于python 爬取天气网图片的资料请关注编程网其它相关文章!

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    python 爬取天气网卫星图片

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    python 爬取天气网卫星图片

    目录项目地址:代码部分下载生成文件功能创建文件夹生成时间列表生成下载URL列表主函数爬取效果项目地址: https://github.com/MrWayneLee/weather-demo 代码部分 下载生成文件功能# 下载并生成文件 de
    2022-06-02

    怎么利用python多线程爬取天气网站图片并保存

    这篇文章主要介绍了怎么利用python多线程爬取天气网站图片并保存,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.1 题目指定一个网站,爬取这个网站中的所有的所有图片,例如
    2023-06-25

    python怎么爬取气象台每日天气图代码

    今天就跟大家聊聊有关python怎么爬取气象台每日天气图代码,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。前言中央气象台网站更新后,以前的爬虫方式就不太能用了,我研究了一下发现主要是
    2023-06-22

    python爬取网站美女图片

    今天周五,项目刚刚上线完,有些时间,闲着无聊,继续复习爬虫,这次打算爬取网站的美女图片。得先找到目标,然后目标网站还不会反爬虫,因为自己只是小白,好了开始。寻找目标,发现了目标,哈哈 http://www.meizitu.com 里面图片按
    2023-01-31

    python如何爬取网页图片

    要使用Python爬取网页图片,可以使用requests库来发送HTTP请求,然后使用beautifulsoup库或者正则表达式来解析网页内容,最后使用urllib库来下载图片。下面是一个简单的示例代码,可以爬取指定网页的所有图片并保存到本
    2023-08-20

    python怎么爬取某网站图片

    Python爬取网页图片教程本文介绍了如何使用Python从网页上爬取图片。首先获取网页源代码,然后解析HTML以找到图像URL。接着下载图像并处理下载过程中的异常。文章还提供了一些高级技巧,例如并行化、处理重定向和使用代理。通过遵循本教程,开发者可以轻松地开发Python程序来收集网页上的图像。
    python怎么爬取某网站图片
    2024-04-13

    如何使用Python爬虫爬取网站图片

    这篇文章主要介绍了如何使用Python爬虫爬取网站图片,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。此次python3主要用requests,解析图片网址主要用beautif
    2023-06-22

    怎么用Python爬取某图网的图片

    本篇内容介绍了“怎么用Python爬取某图网的图片”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!相信很多设计小伙伴有好的灵感,但是没有好的设
    2023-06-15

    Python爬取网页中的图片(搜狗图片)详解

    前言 最近几天,研究了一下一直很好奇的爬虫算法。这里写一下最近几天的点点心得。下面进入正文: 你可能需要的工作环境:Python 3.6官网下载本地下载 我们这里以sogou作为爬取的对象。 首先我们进入搜狗图片http://pic.sog
    2022-06-04

    怎么使用python爬取网页图片

    本篇内容介绍了“怎么使用python爬取网页图片”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在现在这个信息爆炸的时代,要想高效的获取数据,
    2023-07-02

    python爬虫入门实战之爬取网页图片

    本篇文章给大家带来了关于Python的相关知识,其中主要整理了爬取网页图片的相关问题,要想高效的获取数据,爬虫是非常好用的,而用python做爬虫也十分简单方便,下面通过一个简单的小爬虫程序来看一看写爬虫的基本过程,下面一起来看一下,希望对大家有帮助。【相关推荐:Python3视频教程 】在现在这个信息爆炸的时代,要想高效的获取数据,爬虫是非常好用的。而用python做爬虫也十分简单方便,下面通过一
    2022-07-11

    Python如何爬取觅知网素材图片

    这篇文章主要讲解了“Python如何爬取觅知网素材图片”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python如何爬取觅知网素材图片”吧!【一、项目背景】 在素材网想找到合适图片需要一
    2023-06-21

    Python中怎么爬取斗图网表情包图片

    这篇文章给大家介绍Python中怎么爬取斗图网表情包图片,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。相信大家在和别人聊天的时候都很喜欢斗图吧,斗着斗着斗忘记睡觉了,哈哈,感情得到了升华,下面来介绍一个利用Python
    2023-06-02

    Python轻松爬取写真网站全部图片

    从写真网站下载图像本教程提供了逐步说明,指导您使用Python3.x从目标写真网站下载图像。它涵盖了从获取HTML到解析图像链接和保存图像的各个步骤。还包括高级用法,例如多线程下载、过滤特定图像大小和处理分页。请务必遵守网站的使用规则和尊重版权。
    Python轻松爬取写真网站全部图片
    2024-04-12

    编程热搜

    • Python 学习之路 - Python
      一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
      Python 学习之路 - Python
    • chatgpt的中文全称是什么
      chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
      chatgpt的中文全称是什么
    • C/C++中extern函数使用详解
    • C/C++可变参数的使用
      可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
      C/C++可变参数的使用
    • css样式文件该放在哪里
    • php中数组下标必须是连续的吗
    • Python 3 教程
      Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
      Python 3 教程
    • Python pip包管理
      一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
      Python pip包管理
    • ubuntu如何重新编译内核
    • 改善Java代码之慎用java动态编译

    目录