Python 中可用于网络爬取方法实在是太多了导致用户在使用的时候难以取舍,而且并非所有的方法都能够在用户需要下载的网站中进行爬取。例如有如下的方法:

from ftplib import FTP(网站:https://www.cnblogs.com/huzixia/p/10389945.html);

import request(网站:https://blog.csdn.net/u013546508/article/details/101014284)

,我采用了urllib包下载新西兰验潮站数据,接下来附上我下载的代码,可根据自身需求改变①下载文件名,②网站地址,③下载至本地目录等

新西兰验潮站网址:http://apps.linz.govt.nz/ftp/sea_level_data/

文件名称(以AUCT为列):

源码:

# -*- coding: utf-8 -*-
"""
Created on Fri Mar 20 21:54:09 2020

@author: SWJTU-LZG
"""
import urllib
import os
from tqdm import tqdm

#验潮站名字
sta_name = ['AUCT','CPIT','CHST','GIST','KAIT','GBIT','LOTT','MNKT','NAPT','NCPT','OTAT','PUYT','SUMT','TAUT','WLGT','CHIT']
#sta_name = ['AUCT']
#下载到本地路径
local_dir = ('E:/SeaLevel/aaaa/')
url_start = ('http://apps.linz.govt.nz/ftp/sea_level_data/')
#station
for i in range(0,len(sta_name)):
    if not os.path.isdir(local_dir+sta_name[i]):
        os.mkdir(local_dir+sta_name[i])
    store_local_dir = (local_dir+sta_name[i])
    #year
    for j in range(2018,2020):
        url_mid = (sta_name[i]+'/'+str(j)+'/41/')
        #day
        for k in tqdm(range(0,365)):
            url_end = (sta_name[i]+'_41_'+str(j)+'%03d.zip'%k)
            url = (url_start+url_mid+url_end)
            try:        
                request = urllib.request.Request(url)
                f = urllib.request.urlopen(request,timeout=30)
                file = f.read()
                with open(store_local_dir+'/'+url_end,'wb') as ff:
                    ff.write(file)
            except Exception as e:
                print('connecting time out!')#return error information

PS:小白编写,下载较慢,但是无任何报错.....可实时显示下载百分比。

由于疫情期间在家无法使用学校服务器所以采用python下载,如果是Linux系统下使用wget是最为方便的!

利用Python下载新西兰验潮站数据!相关推荐

  1. 利用python下载fnl数据方法

    (1)下载python,网上下载方法很多,此处不再赘述,记得下载和电脑系统版本匹配的就好: (2)去ncar官网注册 https://rda.ucar.edu/ 先进行注册,需要注意的是注册最好用教育 ...

  2. 利用python决策树分析iris数据及树状图绘制

    利用python决策树分析iris数据及树状图绘制 数据说明 数据划分 模型训练及评估 模型训练代码 模型大致评估 树状图绘制 Graphviz安装配置及入门 代码汇总 基地部门公众号 数据说明 数据 ...

  3. python下载文件到本地-Python下载网络文本数据到本地内存的四种实现方法示例

    本文实例讲述了Python下载网络文本数据到本地内存的四种实现方法.分享给大家供大家参考,具体如下: import urllib.request import requests from io imp ...

  4. python录入数据至ppt_利用Python进行数据分析之 数据加载.ppt

    利用Python进行数据分析之 数据加载 " " " " 数据加载,存储与文件格式 1,读写文本格式数据: (read_csv,read_table,read_ ...

  5. 利用Python批量识别电子账单数据

    文章目录 一.前言 二.调用Baidu aip识别 三.批量识别电子账单 一.前言 有一定数量类似如下截图所示的账单,利用 Python 批量识别电子账单数据,并将数据保存到Excel. 百度智能云接 ...

  6. 基于BC95的数据转发,利用Python实现UDP接收数据,TCP转发数据

    基于BC95的数据转发,利用Python实现UDP接收数据,TCP转发数据 文章信息 环境信息 系统概览 基于Python的UDP(服务端)数据接收 1. UDP接受的数据如何读取 文章信息 撰写日期 ...

  7. 利用Python进行数据分析:数据规整(基于DataFrame)

    利用Python进行数据分析:数据规整 在许多应用中,数据可能分散在许多文件或数据库中,存储的形式也不利于分析.本部分关注可以聚合.合并.重塑数据的方法. 文章目录 利用Python进行数据分析:数据 ...

  8. 利用Python对NBA SportUV数据进行可视化及分析

    利用Python对NBA SportUV数据进行可视化及分析 SportUV是2005年,由以色列计算机科学家Gal Oz和Miky Tamir 创立的,其实,最早这两位大牛是搞导弹跟踪和高级光学识别 ...

  9. 利用python获取word图表数据和修改图表信息

    利用python获取word图表数据和修改图表信息 起因咸鱼有个人问word怎么修改图表信息,想用docx库找不到关于图表的方法,这里用了Win32com. import time import wi ...

最新文章

  1. APACHE利用Limit模块限制IP连接数
  2. Linux下用来获取各种系统信息的C++类
  3. String 和Integer、int之间互转
  4. MySQL性能分析及explain的使用
  5. ACM中关于计算几何(浮点数)的精度问题
  6. 【OpenCV 例程200篇】84. 由低通滤波器得到高通滤波器
  7. 【飞秋教程】查找/备份/还原
  8. 2030年春节,你会跟机器人一起过吗?
  9. python以读写方式打开文件_python 文件读写with open模式r,r+,w,w+,a,a+的区别
  10. html网页模板酒店预订,MUI 项目模板之 “酒店预订”
  11. 风火编程--繁体转简体
  12. 【图像分割】基于matlab各向异性热扩散方程SAR图像分割【含Matlab源码 1879期】
  13. android 图标制作
  14. 《墨菲定律》读书笔记(下)
  15. session Asii码转换
  16. 关于在袁教授blog中的”呛袁教授“的争论
  17. 【计算机操作系统】新兴操作系统
  18. Adobe或QQ的oxc000007b错误解决方案.
  19. 使用CAS实现SSO.
  20. 二级计算机等级证水平高吗,全国计算机水平一级高还是二级高

热门文章

  1. 2014年01月25日
  2. 国内外低代码开发平台优劣势一览
  3. Java语言的26个细节
  4. 05-kafka日志保存时间
  5. Android的简单介绍
  6. vscode+django 搭建自己的个人网站(一) ——环境搭建与配置
  7. 前端百题斩【010】——通俗易懂的JavaScript执行上下文
  8. [ ! -r xxx ]在shell脚本中是什么意思
  9. 想创业,就别输不起!
  10. 已解决paddleocr infer_rec打包framework_pb2,导包import framework_pb2 as framework__pb2报错