目录

1.前言
2.操作步骤
3.结果

建了一个QQ群,大家可以在里边聊聊水色遥感数据下载和数据处理方面的事情:1087024529

设想如下场景:你需要在哥白尼数据开放访问中心(Copernicus Open Access Hub)下载挑选过后的200多幅Sentinel的影像,或者你要把你购物车里的数据全部下载。你要一个一个复制数据链接到下载器?或者在一个数据一个数据旁点击下载按钮,然后等下载器同时下完两幅,再来点击下载按钮,下载新数据?这是一个令人头疼的任务。而本博客就来解决这个问题。

1.前言

上回的博客里介绍到:使用IDM批量下载Sentinel(哨兵)卫星数据。博客里介绍通过从网页上一个一个复制数据的链接到TXT文件,然后在TXT文件中选择所有链接到IDM中下载。这种从网页上直接复制数据链接的方法,需要重复的Ctrl+C,Ctrl+V,十分麻烦。本博客介绍一种可以加快获取多数据链接的方法。

2.操作步骤

2.1 当根据条件检索数据后,在每个数据后会有一个加入购物车的选项。点击加入购物车图标(图中红色方框),方便的将想要的数据加入购物车。

2.2. 当点击加入购物车图标后,加入购物车图标即发生变化,显示数据处于购物车中:

2.3. 我这里随便加入了8幅影像到购物车。接下来,就是获取数据链接。打开购物车,可以看到所选的数据已经在里边。这时候我们将每页显示的数据数量调到最大150(尽量把数据显示在一页,如果一页显示不行,接下来的步骤就重复操作,数据较小就可以忽略这个问题)。


2.4. 在浏览器中打开开发人员工具(按F12),可以看到数据的链接全部在id号为’cart-row-attributes’的div标签下的a标签中。这时就想到了使用爬虫来获取页面的数据链接。

2.5. 在页面的空白处,点击鼠标右键,将网页另存为本地(当然有其他方法将网页的内容复制下来,只要获取到网页内容即可。直接通过网页的URL爬取可不容易实现)。

使用如下代码,获取购物车页面里数据的链接和ID号。

from bs4 import BeautifulSoup
import pandas as pd
import requestsfilepath='scihub.copernicus.eu.html' #保存的网页,自己按照实际保存位置调整with open(filepath,'rb') as f:ss=f.read()soup=BeautifulSoup(ss,'html.parser')
#获取所有id为cart-row-attributes的div标签
divfind=soup.find_all('div',id='cart-row-attributes')
linklist=[]
idlist=[]
for df in divfind:#获取满足条件的div下的a标签#提取a标签的内容,即为数据链接link=df.find('a').stringid=link.split('\'')[1]linklist.append(link)idlist.append(id)linkdataframe=pd.DataFrame(linklist)
iddataframe=pd.DataFrame(idlist)#将数据链接写出
with pd.ExcelWriter('Httpandid.xlsx') as hifile:linkdataframe.to_excel(hifile,sheet_name='HTTP',header=False,index=False)iddataframe.to_excel(hifile,sheet_name='ID',header=False,index=False)

3.结果

程序运行后,会自动新建一个Excel文件(这里命名为Httpandid.xlsx)。打开Excel文件即可以看到里边的HTTP表存放数据链接,ID存放数据的ID号(HTTP表和ID表的数据是对应的)。

然后就可以复制数据的链接到IDM,参考:使用IDM批量下载Sentinel(哨兵)卫星数据里边的介绍,愉快进行数据下载了。

你要是对数据没那么挑剔,只要检索出来的数据就都下载下来,那么你就不用将数据加入购物车,直接将检索到数据的网页保存到本地,找到数据链接所处的标签(class为list-link selectable的div标签下的a标签中的内容),写个爬虫即可。

使用Python快速获取哥白尼数据开放访问中心购物车里的数据下载链接相关推荐

  1. 使用Python快速获取公众号文章定制电子书(二)

    原文链接 我的GitHub博客地址 接上篇文章使用Python快速获取公众号文章定制电子书(一).我们现在已经成功的将公众号历史消息的前十条文章给爬取了出来,使用 content_url 这个关键字段 ...

  2. 用 Python 快速获取基金持仓增减情况 | 更新版

    来源:Python数据之道 (ID:PyDataLab) 作者:阳哥 01写在前面 大家好,我是阳哥. 大家知道,在财经领域,Python是有着广泛的用途的.2021年,量化基金开始成为弄潮儿.有不少 ...

  3. Python快速获取桌面路径

    python 快速获取桌面路径 import os desk = os.path.join(os.path.expanduser("~"), 'Desktop') + '\\'输出 ...

  4. Python爬虫:爬取知乎上的视频,并把下载链接保存到md文件中

    Python爬虫:爬取知乎上的视频,并把下载链接保存到md文件中 1.需要的Python模块 主要是requests模块,用于得到的网页的数据 安装命令为:pip install requests 2 ...

  5. 利用docxtpl库将excel里的数据向一个word模板里填充数据,并保存为一个word文档

    ###程序功能说明:该功能是将excel里的数据向一个word模板里填充数据,并保存为一个word文档. from docxtpl import DocxTemplate import openpyx ...

  6. 用 Python 快速获取基金持仓增值与减持情况

    来源:Python数据之道 (ID:PyDataLab) 作者:阳哥 大家好,我是阳哥. 大家知道,在财经领域,Python是有着广泛的用途的,这不,最近A股成交量明显扩大,有不少消息说是量化类的基金 ...

  7. 使用Python快速获取公众号文章定制电子书(一)

    原文链接 我的GitHub博客地址 前言 分享一个笔者最近写的 Python 相关的小 demo,爬取某个公众号的所有历史文章,并导出到本地,方便之后在线下环境直接观看.参考了刘志军的小册基于Pyth ...

  8. 【报告分享】2021年中国五大主流电商平台关于用户数据的最新规则汇总.pdf(附下载链接)...

    省时查报告-专业.及时.全面的行研报告库 省时查方案-专业.及时.全面的营销策划方案库 大家好,我是文文(微信号:sscbg2020),今天给大家分享纷析智库和夸克网于2021年9月份联合发布的报告& ...

  9. matlab如何excel数据,Matlab如何读取Excel里的数据

    Matlab如何读取Excel里的数据呢?一起看看下面这篇文章吧! 我们可以使用xlswrite,用法是这样的:xlswrite('Excel路径+Excel的名称','需要输出的矩阵名称')当然,如 ...

  10. 在页脚里显示本页统计数据_外卖营业统计里的数据您能看懂吗?

    自己的外卖店铺在商圈里是处于什么水平?这周的营业额相对上周下滑很多,是哪里出现问题?无效订单这么多,到底是哪个环节没做好?这些问题在"营业统计"的数据分析里统统可以得到解答. &q ...

最新文章

  1. 【CURL】模拟登录网站并获取用户信息
  2. Python Requests 简明教程
  3. Netflix Curator 使用 Zookeeper 编程
  4. Caused by: org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'beans'.
  5. phper必知必会之类库自动加载的七种方式(三)
  6. Yapi Mock 远程代码执行漏洞
  7. HTML5的LocalStorage和sessionStorage的使用 -缓存
  8. centos php 显示错误提示,Centos下编译php的典型错误及解决
  9. 美国国家标准技术局发布应用容器安全指南
  10. struts2 struts.xml 配置(转载)
  11. matlab 数据导入
  12. 粉笔公考——错题集——申论
  13. 召唤神龙源码(可部署上线)
  14. 鸿蒙系统学习系列 | 上手HarmonyOS十大必看指南!
  15. android 延时拍照,手机如何延时拍摄 手机延时拍摄技巧有哪些
  16. 块存储、文件存储与对象存储的区别与应用场景
  17. 数据库导出EXCEL后0丢失
  18. PDF格式文件怎么编辑?分享一个PDF编辑的方法
  19. 关于IDEA不生成out文件无法执行程序的问题
  20. Struts2的介绍~~(跟着佟刚老师视频)

热门文章

  1. uniapp 学习笔记三十 结算页面结构搭建地址列表页面结构搭建
  2. C#服务端的微信小游戏——多人在线角色扮演(十二)
  3. 本地微信公众号授权登录获取code步骤
  4. 服务器上phpstudy搭建网站,如何使用PHPstudy在本地搭建一个网站(最新图文教程)...
  5. 英文信件结尾的表达方式
  6. php怎么画五星红旗,php基于GD库画五星红旗的方法
  7. 计算机组成原理期末大纲
  8. 简单记录如何通过 VS Code 和 Auto Build Marlin编译和更新marlin固件
  9. PCA、PCoA、NMDS、Anosim学习
  10. C++语法(五)数据类型