基于python的selenuim库,利用遥感影像数据标识从地理空间数据云上下载对应的遥感影像

针对Landsat系列数据

爬取网页的时候需要time.sleep(),否则可能网页还没加载出来,命令已经进行下去了,这样的话便无法定位到你想要的元素,导致爬取失败

输入

将要下载的数据标识排在第一列

有空再写一个USGS的下载。

from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.common.by import Bydef download(data_list):for i in data_list:if i[:3]=='LE7':A=driver.find_element_by_xpath(dict1[i[:3]+'_on']).click()time.sleep(3)B=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div[2]/div[1]/table/tr[1]/td[2]/div/input')B.send_keys(i)B.send_keys(Keys.ENTER)time.sleep(3)q=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div[2]/div[1]/table/tr[3]/td').textif str(q)=="没有记录!":D=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[1]/div[1]/nav/ol/li[2]').click()time.sleep(3)A=driver.find_element_by_xpath(dict1[i[:3]+'_off']).click()time.sleep(3)B=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div[2]/div[1]/table/tr[1]/td[2]/div/input')B.send_keys(i)B.send_keys(Keys.ENTER)time.sleep(3)C=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div[2]/div[1]/table/tr[3]/td[11]/div/div/p[2]')C.click()time.sleep(3)D=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[1]/div[1]/nav/ol/li[2]').click()time.sleep(3)else:C=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div[2]/div[1]/table/tr[3]/td[11]/div/div/p[2]')C.click()time.sleep(3)D=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[1]/div[1]/nav/ol/li[2]').click()time.sleep(3)else:A=driver.find_element_by_xpath(dict1[i[:3]]).click()time.sleep(3)B=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div[2]/div[1]/table/tr[1]/td[2]/div/input')B.send_keys(i)B.send_keys(Keys.ENTER)time.sleep(3)C=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div[2]/div[1]/table/tr[3]/td[11]/div/div/p[2]/img')C.click()time.sleep(3)D=driver.find_element_by_xpath('/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[1]/div[1]/nav/ol/li[2]').click()time.sleep(3)def extract_water(excel):#从excel中提取遥感影像的数据标识信息import xlrdworkbook=xlrd.open_workbook(excel)sheet1=workbook.sheet_by_name("29_31")data_list=[]for i in range(1,sheet1.nrows):idenfication=str(sheet1.cell(i,0).value)data_list.append(idenfication)return data_listr=extract_water(r'C:\Users\23932\Desktop\毕设\29_31.xlsx')
print(r)#创建字段来映射卫星和网址
dict1={}
dict1['LT4']='/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div/div[2]/div[4]'#TM传感器
dict1['LT5']='/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div/div[2]/div[4]'#TM传感器
dict1['LC8']='/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div/div[2]/div[1]'#OLI传感器
dict1['LE7_off']='/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div/div[2]/div[2]'#ETM传感器
dict1['LE7_on']='/html/body/div[1]/div[3]/div[1]/div[1]/div[2]/div[2]/div[2]/div/div[2]/div[3]'#ETM传感器
##登录
driver = webdriver.Chrome(executable_path = r'C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('http://www.gscloud.cn/accounts/login_user')
email = driver.find_element_by_xpath('//input[@id="email"]')
email.send_keys('2393251747@qq.com') #账号
password = driver.find_element_by_xpath('//input[@id="password"]')
password.send_keys('a15328429293!') #密码
captcha = driver.find_element_by_xpath('//input[@id="id_captcha_1"]')
captcha_sj = input('请输入验证码:').strip()
captcha.send_keys(captcha_sj)
dr_buttoon=driver.find_element_by_xpath('//input[@id="btn-login"]').click() #输入验证码后点击登入按钮
time.sleep(10)
#进入‘公开数据’页面
B=driver.find_element_by_xpath('/html/body/div[1]/div[1]/div[2]/ul/li/a').click()
time.sleep(5)
BC=driver.find_element_by_xpath('/html/body/div[1]/div[1]/div[2]/ul/li/div/ul/li[1]/a').click()
time.sleep(10)download(r)

如果你也厌倦了在gscloud上一页一页翻找需要的遥感影像,不妨试试用python在数据云上爬取符合条件的遥感影像信息,这可以帮你节省大量时间:
根据水文资料(水位/流量)爬取地理空间数据云遥感影像信息
根据月份从地理空间数据云上爬取遥感影像信息

需要提取水体吗?可以看看这个(使用IDL对Landsat系列进行批量水体提取

【爬虫】从地理空间数据云上批量下载遥感影像相关推荐

  1. 从地理空间数据云下载数据后该如何操作

    首先,当然是要解压数据.以前上课的时候都是直接利用老师给我们发的实验数据,这次是期末论文考核,需要自己找数据,自己进行操作,浅浅记录以下我的学习过程吧. 当从地理空间数据云检索并下载完成数据后,我发现 ...

  2. 如何用python批量下载数据_Python批量下载地理空间数据云数据!Python无所不能!...

    模拟登录 这里要用到两个包:requests和json.requests使用前得先安装:pip install requests. In [3]: 进群:548377875 即可获取数十套PDF哦! ...

  3. element 怎么把数据写到日历表上_数据集 | 地理空间数据云30m的DEM爬取

    DEM数据是我们经常用到的一种数据,小编今天就带大家一块看一下怎么用python来爬取地理空间数据云的30m的DEM数据. 我们要爬取DEM数据首先还是要有一个地理空间数据云的账号.小伙伴们如果没有的 ...

  4. DEM数据下载——以地理空间数据云为例

    数字高程模型(Digital Elevation Model)是进行地形分析的重要基础,诸如坡度.坡向及水文分析等都在此基础上进行.今天,我们一起来聊一聊一种DEM数据常见下载方式. 按照惯例,先将网 ...

  5. 学习笔记——GEE\USGS\地理空间数据云\ENVI反复横跳的心酸过程

    整个问题实际上是在用GEE做无监督分类时,发现影像拼接色彩差距较大.出现明显拼接缝的问题,在尝试了网上已有的直方图匹配算法之后效果不佳且经常溢出,所以回归本心用ENVI去校正,试图获得色彩统一的整个影 ...

  6. 四维轻云地理空间数据云管理平台具有哪些优势?

    <四维轻云>是一款轻量化的地理空间数据管理云平台,支持多种地理空间数据的在线管理.编辑及分享.目前,平台有项目管理.数据上传.场景搭建.发布分享.素材库等功能模块,支持团队多用户在线协作管 ...

  7. ncbi-genome-download在NCBI上批量下载基因组

    ncbi-genome-download在NCBI上批量下载基因组 1.简介 2. 安装 3. 使用 1.简介 ncbi-genome-download是一个可以直接从NCBI上批量下载序列的软件,数 ...

  8. 【linux 上批量下载amazon s3数据】

    linux 上批量下载amazon s3数据 linux 上批量下载amazon s3数据 linux 上批量下载amazon s3数据 最近导师喊我下载amazon s3上的数据传到服务器上,没用过 ...

  9. 方法技能:使用SXEarth下载遥感影像与高程数据,并使用MapGIS10进行三维显示

    1 软件环境 SXEarth + MapGIS SXEarth下载:晟兴地球(正常安装就可以,国产良心软件) 2 使用SXEarth进行影像与高程数据下载 2.1打开SXEarth,新建工程 2.2 ...

  10. python爬微信公众号视频_python爬虫公众号所有信息,并批量下载公众号视频

    之前写过一篇类似的文章:python爬取公众号,用最简单的方式爬虫 还有同学一直在问,可能中间有一些小细节不明确,这次彻底明确一下细节. 本篇添加一个批量下载公众号内视频的功能,可以实现完全复制一个公 ...

最新文章

  1. 实验楼第二次试验报告
  2. 知道了05后的隐藏技能之后,我酸了…​
  3. 400分理科学计算机,理科400分能上哪些大学 高考400分算什么水平
  4. spring学习笔记---Jackson的使用和定制
  5. 电脑重装系统之后git pull报错 Permission denied (publickey)
  6. Linux进程间通信(管道、消息队列、共享内存、信号、信号量)
  7. 【渝粤题库】陕西师范大学201981教育统计与测量 作业 (专升本、高起本)
  8. UILabel 设置行间距
  9. 中国5级省市编码爬去整理(统计用区划和城乡划分代码)
  10. STM8L中断线和中断端口使用方法
  11. 十分钟打造 3D 物理世界
  12. matlab解常微分方程——符号解法
  13. 华为:一个中国民族企业的“下半场”在哪里?
  14. 诺兰的阶段模型(转载)
  15. 微信小程序-“授权失败”场景的优雅处理
  16. html5广告的版式设计,永不过时!5种网页版式设计分享
  17. JS | 涉及字符串的内置函数的一些题目
  18. 鹿晗关晓彤公开恋情,是如何把微博服务器搞炸的? 鹿晗关晓彤公开恋情,是如何把微博服务器搞炸的? 题图:《盗墓笔记》 鹿晗关晓彤公开恋情,是如何把新浪微博的服务器搞垮的? 知友:苏莉安(200+
  19. 网络基础该从哪开始补?这36张图,一次性理清
  20. 微信怎么群发视频和文件?

热门文章

  1. 12道JS基础简答题
  2. 【NLP】cs224n课程笔记
  3. CS224N 笔记一
  4. QT安装遇到的问题及解决
  5. 左耳朵耗子:程序员练级攻略
  6. 微型计算机中常提及的,计算机基础大一考试试题「附答案」
  7. 如何把pdf转换成ezd_电脑怎么把pdf转换成ppt
  8. hadoop put命令的格式_Hadoop Shell命令
  9. 关于软件工程的目的与意义
  10. 网银爬虫系统(爬取网银流水,爬取网银余额)难点分析