在Python中下载和处理栅格文件?[关闭]


11

我是python的新手,正在寻求对许多人来说可能微不足道的问题的指导。

有没有一种方法可以在python脚本中使用“ wget”从服务器下载栅格文件并在同一脚本中对其进行处理?

Answers:


14

Python具有内置的urllib2,它可以从IP资源(HTTP,HTTPS,FTP)打开类似文件指针的对象。

import urllib2, os

# See http://data.vancouver.ca/datacatalogue/2009facetsGridSID.htm
rast_url = 'ftp://webftp.vancouver.ca/opendata/2009sid/J01.zip'
infp = urllib2.urlopen(rast_url)

然后,您可以在本地传输和写入字节(即下载):

# Open a new file for writing, same filename as source
rast_fname = os.path.basename(rast_url)
outfp = open(rast_fname, 'wb')

# Transfer data .. this can take a while ...
outfp.write(infp.read())
outfp.close()

print('Your file is at ' + os.path.join(os.getcwd(), rast_fname))

现在,您可以对文件执行任何操作。


1
+1用这种方法执行起来似乎有些复杂,但由于没有外部依赖关系,因此它更易于移植且易于调试。
肖恩


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.