from ftplib import FTP
import os
url = 'ftp.cpc.ncep.noaa.gov'
ftp = FTP(url) # connect to host, default port
ftp.login() # user anonymous, passwd anonymous@
'230 Login successful.'
Notar que aunte que no exista necesidad de hacer un login en el servidor, de todas maneras hay que utilizar el método .login()
ftp.cwd('/NMME/clim/')
ftp.dir()
-rwxr-xr-x 1 ftp ftp 587104 May 19 2014 prate.01.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 530096 May 19 2014 prate.01.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 570816 May 19 2014 prate.01.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 597516 May 19 2014 prate.01.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.01.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 611542 May 19 2014 prate.01.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.01.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 578960 Sep 01 2015 prate.01.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 587104 May 19 2014 prate.02.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 538240 May 19 2014 prate.02.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 554528 May 19 2014 prate.02.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 597516 May 19 2014 prate.02.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.02.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 619688 May 19 2014 prate.02.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.02.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 570816 Sep 01 2015 prate.02.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 587104 May 19 2014 prate.03.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 538240 May 19 2014 prate.03.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 554528 May 19 2014 prate.03.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 597516 May 19 2014 prate.03.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.03.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 May 19 2014 prate.03.GFDL_FLORa06.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 May 19 2014 prate.03.GFDL_FLORb01.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 619688 May 19 2014 prate.03.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.03.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 570816 Sep 01 2015 prate.03.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 513718 May 19 2014 prate.04.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 554528 May 19 2014 prate.04.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 546384 May 19 2014 prate.04.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 597516 May 19 2014 prate.04.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.04.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 May 19 2014 prate.04.GFDL_FLORa06.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 May 19 2014 prate.04.GFDL_FLORb01.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 619688 May 19 2014 prate.04.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.04.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 578960 Sep 01 2015 prate.04.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 513718 May 19 2014 prate.05.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 562672 May 19 2014 prate.05.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 546384 May 19 2014 prate.05.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 597516 May 19 2014 prate.05.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.05.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 619688 May 19 2014 prate.05.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.05.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 587104 Sep 01 2015 prate.05.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 578960 May 19 2014 prate.06.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 546384 May 19 2014 prate.06.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 554528 May 19 2014 prate.06.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 581408 May 19 2014 prate.06.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.06.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 619688 May 19 2014 prate.06.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.06.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 587104 Sep 01 2015 prate.06.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 505572 May 19 2014 prate.07.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 546384 May 19 2014 prate.07.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 562672 May 19 2014 prate.07.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 581408 May 19 2014 prate.07.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.07.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 611542 May 19 2014 prate.07.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.07.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 587104 Sep 01 2015 prate.07.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 570816 May 19 2014 prate.08.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 546384 May 19 2014 prate.08.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 587104 May 19 2014 prate.08.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 581408 May 19 2014 prate.08.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.08.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 603396 May 19 2014 prate.08.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.08.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 587104 Sep 01 2015 prate.08.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 570816 May 19 2014 prate.09.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 538240 May 19 2014 prate.09.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 587104 May 19 2014 prate.09.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 581408 May 19 2014 prate.09.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.09.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 587104 May 19 2014 prate.09.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.09.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 570816 Sep 01 2015 prate.09.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 570816 May 19 2014 prate.10.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 530096 May 19 2014 prate.10.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 587104 May 19 2014 prate.10.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 581408 May 19 2014 prate.10.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.10.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 587104 May 19 2014 prate.10.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.10.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 570816 Sep 01 2015 prate.10.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 578960 May 19 2014 prate.11.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 530096 May 19 2014 prate.11.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 578960 May 19 2014 prate.11.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 589462 May 19 2014 prate.11.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.11.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 595250 May 19 2014 prate.11.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.11.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 570816 Sep 01 2015 prate.11.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 587104 May 19 2014 prate.12.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.12.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 570816 May 19 2014 prate.12.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 597516 May 19 2014 prate.12.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 807300 Sep 01 2015 prate.12.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 603396 May 19 2014 prate.12.NASA.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 521952 May 19 2014 prate.12.NCAR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 570816 Sep 01 2015 prate.12.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1124848 Dec 14 2015 tmp2m.01.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1124848 Dec 14 2015 tmp2m.01.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1193948 Dec 14 2015 tmp2m.01.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1193948 Sep 01 2015 tmp2m.01.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 904766 Dec 14 2015 tmp2m.01.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 896620 Sep 01 2015 tmp2m.01.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 904766 Dec 14 2015 tmp2m.02.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 904766 Dec 14 2015 tmp2m.02.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 959992 Dec 14 2015 tmp2m.02.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1193948 Sep 01 2015 tmp2m.02.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 904766 Dec 14 2015 tmp2m.02.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 904766 Sep 01 2015 tmp2m.02.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 912912 Dec 14 2015 tmp2m.03.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 912912 Dec 14 2015 tmp2m.03.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 968048 Dec 14 2015 tmp2m.03.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1193948 Sep 01 2015 tmp2m.03.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 912912 Dec 14 2015 tmp2m.03.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 912912 Sep 01 2015 tmp2m.03.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 904766 Dec 14 2015 tmp2m.04.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 912912 Dec 14 2015 tmp2m.04.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 959992 Dec 14 2015 tmp2m.04.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1185892 Sep 01 2015 tmp2m.04.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 904766 Dec 14 2015 tmp2m.04.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 904766 Sep 01 2015 tmp2m.04.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 896620 Dec 14 2015 tmp2m.05.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 904766 Dec 14 2015 tmp2m.05.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 951936 Dec 14 2015 tmp2m.05.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1177836 Sep 01 2015 tmp2m.05.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 896620 Dec 14 2015 tmp2m.05.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 896620 Sep 01 2015 tmp2m.05.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 888474 Dec 14 2015 tmp2m.06.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 896620 Dec 14 2015 tmp2m.06.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 943880 Dec 14 2015 tmp2m.06.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1177836 Sep 01 2015 tmp2m.06.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 888474 Dec 14 2015 tmp2m.06.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 888474 Sep 01 2015 tmp2m.06.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.07.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 888474 Dec 14 2015 tmp2m.07.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 935824 Dec 14 2015 tmp2m.07.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1177836 Sep 01 2015 tmp2m.07.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.07.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 880328 Sep 01 2015 tmp2m.07.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.08.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.08.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1177836 Dec 14 2015 tmp2m.08.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1177836 Sep 01 2015 tmp2m.08.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 994442 Dec 14 2015 tmp2m.08.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 880328 Sep 01 2015 tmp2m.08.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.09.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.09.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1177836 Dec 14 2015 tmp2m.09.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1177836 Sep 01 2015 tmp2m.09.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1002588 Dec 14 2015 tmp2m.09.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 880328 Sep 01 2015 tmp2m.09.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1100410 Dec 14 2015 tmp2m.10.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.10.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.10.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1177836 Dec 14 2015 tmp2m.10.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1177836 Sep 01 2015 tmp2m.10.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 896620 Dec 14 2015 tmp2m.10.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 880328 Sep 01 2015 tmp2m.10.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.11.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 880328 Dec 14 2015 tmp2m.11.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1177836 Dec 14 2015 tmp2m.11.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1177836 Sep 01 2015 tmp2m.11.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1010734 Dec 14 2015 tmp2m.11.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 880328 Sep 01 2015 tmp2m.11.NCAR_CCSM4.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1108556 Dec 14 2015 tmp2m.12.CFSv2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1116702 Dec 14 2015 tmp2m.12.CMC1.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1116702 Dec 14 2015 tmp2m.12.CMC2.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1185892 Dec 14 2015 tmp2m.12.GFDL.clim.1x1.grb -rw-r--r-- 1 ftp ftp 1185892 Sep 01 2015 tmp2m.12.GFDL_FLOR.clim.1x1.grb -rwxr-xr-x 1 ftp ftp 1010734 Dec 14 2015 tmp2m.12.NASA.clim.1x1.grb -rw-r--r-- 1 ftp ftp 888474 Sep 01 2015 tmp2m.12.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 896620 Aug 01 2013 tmpsfc.01.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.01.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.01.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 912912 Aug 01 2013 tmpsfc.02.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.02.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.02.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 912912 Aug 01 2013 tmpsfc.03.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.03.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.03.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 790652 Aug 01 2013 tmpsfc.04.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.04.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.04.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 782506 Aug 01 2013 tmpsfc.05.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.05.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.05.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 888474 Aug 01 2013 tmpsfc.06.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.06.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.06.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 766214 Aug 01 2013 tmpsfc.07.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.07.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.07.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 766214 Aug 22 2014 tmpsfc.08.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.08.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.08.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 766214 Sep 09 2014 tmpsfc.09.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.09.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.09.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 880328 Aug 01 2013 tmpsfc.10.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.10.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.10.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 880328 Aug 01 2013 tmpsfc.11.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.11.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.11.NCAR_CCSM4.clim.1x1.grb -rwxrwxr-x 1 ftp ftp 888474 Aug 01 2013 tmpsfc.12.CFSv2.clim.1x1.grb -rw-r--r-- 1 ftp ftp 657660 Sep 01 2015 tmpsfc.12.GFDL_FLOR.clim.1x1.grb -rw-r--r-- 1 ftp ftp 580464 Sep 01 2015 tmpsfc.12.NCAR_CCSM4.clim.1x1.grb
filenames = ftp.nlst() # get filenames within the directory
print(filenames)
['prate.01.CFSv2.clim.1x1.grb', 'prate.01.CMC1.clim.1x1.grb', 'prate.01.CMC2.clim.1x1.grb', 'prate.01.GFDL.clim.1x1.grb', 'prate.01.GFDL_FLOR.clim.1x1.grb', 'prate.01.NASA.clim.1x1.grb', 'prate.01.NCAR.clim.1x1.grb', 'prate.01.NCAR_CCSM4.clim.1x1.grb', 'prate.02.CFSv2.clim.1x1.grb', 'prate.02.CMC1.clim.1x1.grb', 'prate.02.CMC2.clim.1x1.grb', 'prate.02.GFDL.clim.1x1.grb', 'prate.02.GFDL_FLOR.clim.1x1.grb', 'prate.02.NASA.clim.1x1.grb', 'prate.02.NCAR.clim.1x1.grb', 'prate.02.NCAR_CCSM4.clim.1x1.grb', 'prate.03.CFSv2.clim.1x1.grb', 'prate.03.CMC1.clim.1x1.grb', 'prate.03.CMC2.clim.1x1.grb', 'prate.03.GFDL.clim.1x1.grb', 'prate.03.GFDL_FLOR.clim.1x1.grb', 'prate.03.GFDL_FLORa06.clim.1x1.grb', 'prate.03.GFDL_FLORb01.clim.1x1.grb', 'prate.03.NASA.clim.1x1.grb', 'prate.03.NCAR.clim.1x1.grb', 'prate.03.NCAR_CCSM4.clim.1x1.grb', 'prate.04.CFSv2.clim.1x1.grb', 'prate.04.CMC1.clim.1x1.grb', 'prate.04.CMC2.clim.1x1.grb', 'prate.04.GFDL.clim.1x1.grb', 'prate.04.GFDL_FLOR.clim.1x1.grb', 'prate.04.GFDL_FLORa06.clim.1x1.grb', 'prate.04.GFDL_FLORb01.clim.1x1.grb', 'prate.04.NASA.clim.1x1.grb', 'prate.04.NCAR.clim.1x1.grb', 'prate.04.NCAR_CCSM4.clim.1x1.grb', 'prate.05.CFSv2.clim.1x1.grb', 'prate.05.CMC1.clim.1x1.grb', 'prate.05.CMC2.clim.1x1.grb', 'prate.05.GFDL.clim.1x1.grb', 'prate.05.GFDL_FLOR.clim.1x1.grb', 'prate.05.NASA.clim.1x1.grb', 'prate.05.NCAR.clim.1x1.grb', 'prate.05.NCAR_CCSM4.clim.1x1.grb', 'prate.06.CFSv2.clim.1x1.grb', 'prate.06.CMC1.clim.1x1.grb', 'prate.06.CMC2.clim.1x1.grb', 'prate.06.GFDL.clim.1x1.grb', 'prate.06.GFDL_FLOR.clim.1x1.grb', 'prate.06.NASA.clim.1x1.grb', 'prate.06.NCAR.clim.1x1.grb', 'prate.06.NCAR_CCSM4.clim.1x1.grb', 'prate.07.CFSv2.clim.1x1.grb', 'prate.07.CMC1.clim.1x1.grb', 'prate.07.CMC2.clim.1x1.grb', 'prate.07.GFDL.clim.1x1.grb', 'prate.07.GFDL_FLOR.clim.1x1.grb', 'prate.07.NASA.clim.1x1.grb', 'prate.07.NCAR.clim.1x1.grb', 'prate.07.NCAR_CCSM4.clim.1x1.grb', 'prate.08.CFSv2.clim.1x1.grb', 'prate.08.CMC1.clim.1x1.grb', 'prate.08.CMC2.clim.1x1.grb', 'prate.08.GFDL.clim.1x1.grb', 'prate.08.GFDL_FLOR.clim.1x1.grb', 'prate.08.NASA.clim.1x1.grb', 'prate.08.NCAR.clim.1x1.grb', 'prate.08.NCAR_CCSM4.clim.1x1.grb', 'prate.09.CFSv2.clim.1x1.grb', 'prate.09.CMC1.clim.1x1.grb', 'prate.09.CMC2.clim.1x1.grb', 'prate.09.GFDL.clim.1x1.grb', 'prate.09.GFDL_FLOR.clim.1x1.grb', 'prate.09.NASA.clim.1x1.grb', 'prate.09.NCAR.clim.1x1.grb', 'prate.09.NCAR_CCSM4.clim.1x1.grb', 'prate.10.CFSv2.clim.1x1.grb', 'prate.10.CMC1.clim.1x1.grb', 'prate.10.CMC2.clim.1x1.grb', 'prate.10.GFDL.clim.1x1.grb', 'prate.10.GFDL_FLOR.clim.1x1.grb', 'prate.10.NASA.clim.1x1.grb', 'prate.10.NCAR.clim.1x1.grb', 'prate.10.NCAR_CCSM4.clim.1x1.grb', 'prate.11.CFSv2.clim.1x1.grb', 'prate.11.CMC1.clim.1x1.grb', 'prate.11.CMC2.clim.1x1.grb', 'prate.11.GFDL.clim.1x1.grb', 'prate.11.GFDL_FLOR.clim.1x1.grb', 'prate.11.NASA.clim.1x1.grb', 'prate.11.NCAR.clim.1x1.grb', 'prate.11.NCAR_CCSM4.clim.1x1.grb', 'prate.12.CFSv2.clim.1x1.grb', 'prate.12.CMC1.clim.1x1.grb', 'prate.12.CMC2.clim.1x1.grb', 'prate.12.GFDL.clim.1x1.grb', 'prate.12.GFDL_FLOR.clim.1x1.grb', 'prate.12.NASA.clim.1x1.grb', 'prate.12.NCAR.clim.1x1.grb', 'prate.12.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.01.CMC1.clim.1x1.grb', 'tmp2m.01.CMC2.clim.1x1.grb', 'tmp2m.01.GFDL.clim.1x1.grb', 'tmp2m.01.GFDL_FLOR.clim.1x1.grb', 'tmp2m.01.NASA.clim.1x1.grb', 'tmp2m.01.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.02.CMC1.clim.1x1.grb', 'tmp2m.02.CMC2.clim.1x1.grb', 'tmp2m.02.GFDL.clim.1x1.grb', 'tmp2m.02.GFDL_FLOR.clim.1x1.grb', 'tmp2m.02.NASA.clim.1x1.grb', 'tmp2m.02.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.03.CMC1.clim.1x1.grb', 'tmp2m.03.CMC2.clim.1x1.grb', 'tmp2m.03.GFDL.clim.1x1.grb', 'tmp2m.03.GFDL_FLOR.clim.1x1.grb', 'tmp2m.03.NASA.clim.1x1.grb', 'tmp2m.03.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.04.CMC1.clim.1x1.grb', 'tmp2m.04.CMC2.clim.1x1.grb', 'tmp2m.04.GFDL.clim.1x1.grb', 'tmp2m.04.GFDL_FLOR.clim.1x1.grb', 'tmp2m.04.NASA.clim.1x1.grb', 'tmp2m.04.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.05.CMC1.clim.1x1.grb', 'tmp2m.05.CMC2.clim.1x1.grb', 'tmp2m.05.GFDL.clim.1x1.grb', 'tmp2m.05.GFDL_FLOR.clim.1x1.grb', 'tmp2m.05.NASA.clim.1x1.grb', 'tmp2m.05.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.06.CMC1.clim.1x1.grb', 'tmp2m.06.CMC2.clim.1x1.grb', 'tmp2m.06.GFDL.clim.1x1.grb', 'tmp2m.06.GFDL_FLOR.clim.1x1.grb', 'tmp2m.06.NASA.clim.1x1.grb', 'tmp2m.06.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.07.CMC1.clim.1x1.grb', 'tmp2m.07.CMC2.clim.1x1.grb', 'tmp2m.07.GFDL.clim.1x1.grb', 'tmp2m.07.GFDL_FLOR.clim.1x1.grb', 'tmp2m.07.NASA.clim.1x1.grb', 'tmp2m.07.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.08.CMC1.clim.1x1.grb', 'tmp2m.08.CMC2.clim.1x1.grb', 'tmp2m.08.GFDL.clim.1x1.grb', 'tmp2m.08.GFDL_FLOR.clim.1x1.grb', 'tmp2m.08.NASA.clim.1x1.grb', 'tmp2m.08.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.09.CMC1.clim.1x1.grb', 'tmp2m.09.CMC2.clim.1x1.grb', 'tmp2m.09.GFDL.clim.1x1.grb', 'tmp2m.09.GFDL_FLOR.clim.1x1.grb', 'tmp2m.09.NASA.clim.1x1.grb', 'tmp2m.09.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.10.CFSv2.clim.1x1.grb', 'tmp2m.10.CMC1.clim.1x1.grb', 'tmp2m.10.CMC2.clim.1x1.grb', 'tmp2m.10.GFDL.clim.1x1.grb', 'tmp2m.10.GFDL_FLOR.clim.1x1.grb', 'tmp2m.10.NASA.clim.1x1.grb', 'tmp2m.10.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.11.CMC1.clim.1x1.grb', 'tmp2m.11.CMC2.clim.1x1.grb', 'tmp2m.11.GFDL.clim.1x1.grb', 'tmp2m.11.GFDL_FLOR.clim.1x1.grb', 'tmp2m.11.NASA.clim.1x1.grb', 'tmp2m.11.NCAR_CCSM4.clim.1x1.grb', 'tmp2m.12.CFSv2.clim.1x1.grb', 'tmp2m.12.CMC1.clim.1x1.grb', 'tmp2m.12.CMC2.clim.1x1.grb', 'tmp2m.12.GFDL.clim.1x1.grb', 'tmp2m.12.GFDL_FLOR.clim.1x1.grb', 'tmp2m.12.NASA.clim.1x1.grb', 'tmp2m.12.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.01.CFSv2.clim.1x1.grb', 'tmpsfc.01.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.01.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.02.CFSv2.clim.1x1.grb', 'tmpsfc.02.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.02.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.03.CFSv2.clim.1x1.grb', 'tmpsfc.03.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.03.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.04.CFSv2.clim.1x1.grb', 'tmpsfc.04.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.04.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.05.CFSv2.clim.1x1.grb', 'tmpsfc.05.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.05.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.06.CFSv2.clim.1x1.grb', 'tmpsfc.06.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.06.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.07.CFSv2.clim.1x1.grb', 'tmpsfc.07.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.07.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.08.CFSv2.clim.1x1.grb', 'tmpsfc.08.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.08.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.09.CFSv2.clim.1x1.grb', 'tmpsfc.09.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.09.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.10.CFSv2.clim.1x1.grb', 'tmpsfc.10.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.10.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.11.CFSv2.clim.1x1.grb', 'tmpsfc.11.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.11.NCAR_CCSM4.clim.1x1.grb', 'tmpsfc.12.CFSv2.clim.1x1.grb', 'tmpsfc.12.GFDL_FLOR.clim.1x1.grb', 'tmpsfc.12.NCAR_CCSM4.clim.1x1.grb']
Supongamos que queremos descargar un solo archivo del servidor. Para esto necesitamos abrir un archivo local en el cual vamos a guardar la descarga. Recuerden que es necesario cerrar el archivo en donde realizamos la descarga una vez finalizada esta.
filename = 'prate.01.CFSv2.clim.1x1.grb'
# Path al archivo local donde lo vamos a guardar
local_filename = os.path.join('data', filename)
file = open(local_filename, 'wb')
ftp.retrbinary('RETR '+ filename, file.write)
file.close()
En el caso en que querramos descargar todos los archivos que hay en algún directorio del servidor vamos a hacer:
# Lista con el nombre de todos los elementos dentro del directoryio
filenames = ftp.nlst()
for filename in filenames:
local_filename = os.path.join('data', filename)
file = open(local_filename, 'wb')
ftp.retrbinary('RETR '+ filename, file.write)
file.close()
ftp.quit() # This is the “polite” way to close a connection
Lo más probable es que, dentro de este directorio, existan varios otros archivos que no estemos interesados en descargarlos. Supongamos que solo nos interesa los archivos que tengan la terminación .grd
for filename in filenames:
if filename.endswith('.grd'):
local_filename = os.path.join('data', filename)
file = open(local_filename, 'wb')
ftp.retrbinary('RETR '+ filename, file.write)
file.close()
#Este css es trabajo de @LorenaABarba y su grupo
from IPython.core.display import HTML
css_file = '../css/personal.css'
HTML(open(css_file, "r").read())