首先在此感谢 https://www.zhihu.com/people/li-shi-wei-36 无形的风 在知乎上的分享.
1.在本地配置GEE Python API
【1】首先要保证网络能够访问Google.
【2】然后,配置号本地的python环境,方式有很多,python,或者Anaconda等方式都能够实现本地的python.推荐使用Anaconda (自行搜索链接和教程)
【3】此时打开命令行窗口 (Win+R 输入cmd 或者PowerShell)
接下来的操作,在命令行窗口执行
【4】安装Google的 python API的客户端,命令如下:
pip install google-api-python-client
安装完毕后,可以通过命令查看本地安装好的库: pip list
【5】安装鉴权验证依赖库,输入下面命令
pip install pyCrypto
(备注:参考文章中有个错误提示:错误 error: Microsoft Visual C++ 9.0 is required,本人在安装过程中没有出现此类错误)
【6】安装GEE的python库
pip install earthengine-api
至此,本地GEE python基本配置完成,
本人不习惯在命令行或者jupyter notebook中运行python,更习惯在pycharm中运行,所以,接下来的操作在Pycharm中
在Pycharm中运行测试代码:
import ee ee.Initialize() #打印出数据信息 image = ee.Image('srtm90_v4') print(image.getInfo())
出现报错:
During handling of the above exception, another exception occurred:
.......
socket.timeout: timed out
参考了以下的文章:
错误调试
参考链接: https://zhuanlan.zhihu.com/p/259377035
环境安装完成后,测试代码
import ee import os ee.Initialize() #打印出数据信息 image = ee.Image('srtm90_v4') print(image.getInfo())
出现: 此时报错“URLError: urlopen error [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败“
因为国内使用GEE需要代理,所以需要加上下面代码
import os os.environ['HTTP_PROXY'] = 'http://127.0.0.1:1080' os.environ['HTTPS_PROXY'] = 'http://127.0.0.1:1080'
(等号后面的地址不是绝对的,我参考 https://zhuanlan.zhihu.com/p/259377035这个文章中的地址是可以运行我的代码)
import ee import os os.environ['HTTP_PROXY'] = 'http://127.0.0.1:1080' os.environ['HTTPS_PROXY'] = 'http://127.0.0.1:1080' ee.Initialize() #打印出数据信息 image = ee.Image('srtm90_v4') print(image.getInfo())
最后的输出:{'type': 'Image', 'bands': [{'id': 'elevation', 'data_type': {'type': 'PixelType', 'precision': 'int', 'min': -32768, 'max': 32767}, 'dimensions': [432000, 144000], 'crs': 'EPSG:4326', 'crs_transform': [0.000833333333333, 0, -180, 0, -0.000833333333333, 60]}], 'version': 1494271934303000.0, 'id': 'srtm90_v4', 'properties': {'system:time_start': 950227200000, 'system:time_end': 951177600000, 'system:asset_size': 18827626666}}