fix(setup): 补全Python3.12新环境下的selenium依赖.

This commit is contained in:
谢泓 2025-08-11 19:53:00 +08:00
parent 1f86d2da2b
commit 8883fd8d58
3 changed files with 38 additions and 30 deletions

View File

@ -2,32 +2,34 @@
## 仓库说明 ## 仓库说明
1) EARTHDATA 说明 1. EARTHDATA 说明
- NASA 计划于 2026 年底将公开数据全部集成进 EARTHDATA 中
- HLS 数据集NASA 多部门将Landsat8/9与Sentinel-2A/B统一协调至30m划分为 - NASA 计划于 2026 年底将公开数据全部集成进 EARTHDATA 中
- L30Landsat8/9包含其独有的2个热红外波段并已处理为表面亮温℃ - HLS 数据集NASA 多部门将 Landsat8/9 与 Sentinel-2A/B 统一协调至 30m划分为
- S30Sentinel-2A/B包含其独有的4个红边波段 - L30Landsat8/9包含其独有的 2 个热红外波段,并已处理为表面亮温 ℃)
- 对于核心六波段Blue/Green/Red/NIR/SWIR1/SWIR2可直接合并使用合并后湖北地区单格网观测频率约为3-4d - S30Sentinel-2A/B包含其独有的 4 个红边波段)
2) 使用说明 - 对于核心六波段Blue/Green/Red/NIR/SWIR1/SWIR2可直接合并使用合并后湖北地区单格网观测频率约为 3-4d
- 本仓库基于官方原始脚本修复了实际使用中存在的bug并添加了更多可控制参数
- 爬取时不要使用魔法工具 2. 使用说明
- 实测单格网全年影像爬取+预处理约1h
- 单用户每秒限制100次请求 - 本仓库基于官方原始脚本修复了实际使用中存在的 bug并添加了更多可控制参数
- 爬取时不要使用魔法工具
- 实测单格网全年影像爬取+预处理约 1h
- 单用户每秒限制 100 次请求
## 1 安装基础环境 ## 1 安装基础环境
### 1.1 miniforge ### 1.1 miniforge
- miniforge是结合conda与mamba的最小化包比Anaconda和Miniconda更快更轻量并且配置命令与原conda基本一致支持直接使用mamba命令。 - miniforge 是结合 conda mamba 的最小化包,比 Anaconda Miniconda 更快更轻量,并且配置命令与原 conda 基本一致,支持直接使用 mamba 命令。
- 简而言之环境配置效率上miniforge > Mambaforge (202407已废弃) > Miniconda + Mamba > Miniconda > Anaconda - 简而言之环境配置效率上miniforge > Mambaforge (202407 已废弃) > Miniconda + Mamba > Miniconda > Anaconda
- 官方仓库地址https://github.com/conda-forge/miniforge - 官方仓库地址https://github.com/conda-forge/miniforge
- 官方下载地址https://conda-forge.org/download/ - 官方下载地址https://conda-forge.org/download/
### 1.2 配置环境变量 ### 1.2 配置环境变量
- 为了在控制台中直接使用conda命令需要将安装的相关目录配置到Path环境变量中。 - 为了在控制台中直接使用 conda 命令,需要将安装的相关目录配置到 Path 环境变量中。
``` ```
D:\program\miniforge3 D:\program\miniforge3
@ -37,14 +39,14 @@ D:\program\miniforge3\Library\bin
### 1.3 配置权限 ### 1.3 配置权限
- 详细配置与miniconda相同图文教程地址https://gis-xh.github.io/my-note/python/01conda/Win11-Miniconda-install/ - 详细配置与 miniconda 相同图文教程地址https://gis-xh.github.io/my-note/python/01conda/Win11-Miniconda-install/
- Windows环境下需要设置虚拟环境文件夹的访问权限为所有用户可访问否则会出现无法读取虚拟环境文件的问题 - Windows 环境下,需要设置虚拟环境文件夹的访问权限为所有用户可访问,否则会出现无法读取虚拟环境文件的问题
- 具体地: - 具体地:
- 设置`D:\program\miniforge3\env`目录为所有用户可访问,具体操作为:右键点击文件夹 -> 属性 -> 安全 -> 编辑 -> 添加 -> 添加所有用户 -> 全选 -> 应用 -> 确定 - 设置`D:\program\miniforge3\env`目录为所有用户可访问,具体操作为:右键点击文件夹 -> 属性 -> 安全 -> 编辑 -> 添加 -> 添加所有用户 -> 全选 -> 应用 -> 确定
### 1.4 配置镜像源 ### 1.4 配置镜像源
- 生成下载源文件的配置文件 (若已经安装过Anaconda/Miniconda则无需执行此步骤) - 生成下载源文件的配置文件 (若已经安装过 Anaconda/Miniconda则无需执行此步骤)
```sh ```sh
conda config --set show_channel_urls yes conda config --set show_channel_urls yes
@ -95,12 +97,12 @@ conda init cmd.exe
## 2 运行环境配置 ## 2 运行环境配置
### 2.1 使用mamba创建并激活虚拟环境 ### 2.1 使用 mamba 创建并激活虚拟环境
- 克隆虚拟环境 (完整复刻运行环境所有依赖) - 克隆虚拟环境 (完整复刻运行环境所有依赖)
```sh ```sh
mamba env create -f setup/lpdaac_windows.yml mamba env create -f setup/lpdaac.yml
``` ```
- 克隆虚拟环境 (复刻主要依赖环境-部分依赖可能会更新) - 克隆虚拟环境 (复刻主要依赖环境-部分依赖可能会更新)
@ -158,11 +160,10 @@ data/
### 3.2 NASA Earthdata 账户准备 ### 3.2 NASA Earthdata 账户准备
- 参考自NASA官网示例Demohttps://github.com/nasa/LPDAAC-Data-Resources/blob/main/setup/setup_instructions_python.md - 参考自 NASA 官网示例 Demohttps://github.com/nasa/LPDAAC-Data-Resources/blob/main/setup/setup_instructions_python.md
- 首次运行爬取命令时,需要输入用户名和密码,用户名和密码可以在 [Earthdata](https://urs.earthdata.nasa.gov/) 注册获取。 - 首次运行爬取命令时,需要输入用户名和密码,用户名和密码可以在 [Earthdata](https://urs.earthdata.nasa.gov/) 注册获取。
- 需要注意的是,密码中最好不要出 `@/#/$/%` 等符号,爬取时可能会出错。 - 需要注意的是,密码中最好不要出 `@/#/$/%` 等符号,爬取时可能会出错。
- 单个用户每秒限制最多100次请求参考自https://forum.earthdata.nasa.gov/viewtopic.php?t=3734 - 单个用户每秒限制最多 100 次请求参考自https://forum.earthdata.nasa.gov/viewtopic.php?t=3734
## 4 使用示例 ## 4 使用示例
@ -172,7 +173,7 @@ data/
- `-roi`:感兴趣区,需要按照 **左下右上** 的逆时针顺序设置点坐标,同时还支持 `shp``geojson/json` 格式文件 - `-roi`:感兴趣区,需要按照 **左下右上** 的逆时针顺序设置点坐标,同时还支持 `shp``geojson/json` 格式文件
- `-clip`:是否对影像进行裁剪,默认 `False` - `-clip`:是否对影像进行裁剪,默认 `False`
- `-tile`HLS影像瓦片ID例如 `T49RGQ` - `-tile`HLS 影像瓦片 ID例如 `T49RGQ`
- `-dir`:输出目录,必须是已存在的目录 - `-dir`:输出目录,必须是已存在的目录
- `-start`:开始时间,格式为 `YYYY-MM-DD` - `-start`:开始时间,格式为 `YYYY-MM-DD`
- `-end`:结束时间,格式为 `YYYY-MM-DD` - `-end`:结束时间,格式为 `YYYY-MM-DD`
@ -184,19 +185,19 @@ data/
#### 4.1.2 爬取云端数据并在内存中进行预处理示例 #### 4.1.2 爬取云端数据并在内存中进行预处理示例
- 爬取 L30 与 S30 的核心光谱波段仅按照感兴趣区瓦片ID起止时间以及产品名称筛选影像不进行云量筛选影像对影像进行去云掩膜处理 - 爬取 L30 与 S30 的核心光谱波段:仅按照感兴趣区,瓦片 ID起止时间以及产品名称筛选影像不进行云量筛选影像对影像进行去云掩膜处理
```sh ```sh
python .\\HLS_SuPER\\HLS_SuPER.py -roi '112.9834,30.5286,114.32373,31.64448' -tile T49RGQ -dir .\\data\\HLS\\ALL -start 2024-01-01 -end 2024-01-31 -prod both -bands BLUE,GREEN,RED,NIR1,SWIR1,SWIR2,Fmask -scale True python .\\HLS_SuPER\\HLS_SuPER.py -roi '112.9834,30.5286,114.32373,31.64448' -tile T49RGQ -dir .\\data\\HLS\\ALL -start 2024-01-01 -end 2024-01-31 -prod both -bands BLUE,GREEN,RED,NIR1,SWIR1,SWIR2,Fmask -scale True
``` ```
- 爬取 L30 的所有波段按照感兴趣区瓦片ID起止时间以及产品名称筛选影像过滤云量小于70% 的影像,对影像进行去云掩膜处理 - 爬取 L30 的所有波段:按照感兴趣区,瓦片 ID起止时间以及产品名称筛选影像过滤云量小于 70% 的影像,对影像进行去云掩膜处理
```sh ```sh
python .\\HLS_SuPER\\HLS_SuPER.py -roi '112.9834,30.5286,114.32373,31.64448' -tile T49RGQ -dir .\\data\\HLS\\L30\\subset -start 2024-01-01 -end 2024-01-31 -prod HLSL30 -bands COASTAL-AEROSOL,BLUE,GREEN,RED,NIR1,SWIR1,SWIR2,CIRRUS,TIR1,TIR2,Fmask -cc 70 -scale True python .\\HLS_SuPER\\HLS_SuPER.py -roi '112.9834,30.5286,114.32373,31.64448' -tile T49RGQ -dir .\\data\\HLS\\L30\\subset -start 2024-01-01 -end 2024-01-31 -prod HLSL30 -bands COASTAL-AEROSOL,BLUE,GREEN,RED,NIR1,SWIR1,SWIR2,CIRRUS,TIR1,TIR2,Fmask -cc 70 -scale True
``` ```
- 仅爬取 L30 的热红外波段仅按照感兴趣区瓦片ID起止时间以及产品名称筛选影像不进行云量筛选影像对影像进行去云掩膜处理 - 仅爬取 L30 的热红外波段:仅按照感兴趣区,瓦片 ID起止时间以及产品名称筛选影像不进行云量筛选影像对影像进行去云掩膜处理
```sh ```sh
python .\\HLS_SuPER\\HLS_SuPER.py -roi .\\data\\vectors\\49REL.geojson -tile T49REL -dir .\\data\\HLS\\2024 -start 2024-06-01 -end 2024-09-01 -prod HLSL30 -bands TIR1,TIR2 python .\\HLS_SuPER\\HLS_SuPER.py -roi .\\data\\vectors\\49REL.geojson -tile T49REL -dir .\\data\\HLS\\2024 -start 2024-06-01 -end 2024-09-01 -prod HLSL30 -bands TIR1,TIR2
@ -210,4 +211,4 @@ python .\\HLS_SuPER\\HLS_SuPER.py -roi .\\data\\vectors\\49REL.geojson -tile T49
### 4.2 其他数据 ### 4.2 其他数据
v1.0: 直接运行`DATA_SuPER/`目录下所需数据对应的*.py文件即可. v1.0: 直接运行`DATA_SuPER/`目录下所需数据对应的\*.py 文件即可.

View File

@ -26,3 +26,4 @@ dependencies:
- scikit-image - scikit-image
- seaborn - seaborn
- spectral - spectral
- selenium

View File

@ -1,6 +1,5 @@
name: lpdaac name: lpdaac
channels: channels:
- defaults
- conda-forge - conda-forge
dependencies: dependencies:
- _libavif_api=1.3.0=h57928b3_0 - _libavif_api=1.3.0=h57928b3_0
@ -269,6 +268,7 @@ dependencies:
- opentelemetry-sdk=1.36.0=pyhd8ed1ab_0 - opentelemetry-sdk=1.36.0=pyhd8ed1ab_0
- opentelemetry-semantic-conventions=0.57b0=pyh3cfb1c2_0 - opentelemetry-semantic-conventions=0.57b0=pyh3cfb1c2_0
- orc=2.1.2=h35764e3_0 - orc=2.1.2=h35764e3_0
- outcome=1.3.0.post0=pyhd8ed1ab_1
- overrides=7.7.0=pyhd8ed1ab_1 - overrides=7.7.0=pyhd8ed1ab_1
- packaging=25.0=pyh29332c3_1 - packaging=25.0=pyh29332c3_1
- pandas=2.3.1=py312hc128f0a_0 - pandas=2.3.1=py312hc128f0a_0
@ -353,6 +353,8 @@ dependencies:
- scipy=1.16.0=py312h1416ca1_0 - scipy=1.16.0=py312h1416ca1_0
- seaborn=0.13.2=hd8ed1ab_3 - seaborn=0.13.2=hd8ed1ab_3
- seaborn-base=0.13.2=pyhd8ed1ab_3 - seaborn-base=0.13.2=pyhd8ed1ab_3
- selenium=4.34.2=pyhe01879c_0
- selenium-manager=4.34.0=h18a1a76_0
- send2trash=1.8.3=pyh5737063_1 - send2trash=1.8.3=pyh5737063_1
- setproctitle=1.3.6=py312h4389bb4_0 - setproctitle=1.3.6=py312h4389bb4_0
- setuptools=80.9.0=pyhff2d567_0 - setuptools=80.9.0=pyhff2d567_0
@ -383,6 +385,8 @@ dependencies:
- tornado=6.5.2=py312he06e257_0 - tornado=6.5.2=py312he06e257_0
- tqdm=4.67.1=pyhd8ed1ab_1 - tqdm=4.67.1=pyhd8ed1ab_1
- traitlets=5.14.3=pyhd8ed1ab_1 - traitlets=5.14.3=pyhd8ed1ab_1
- trio=0.30.0=py312h2e8e312_0
- trio-websocket=0.12.2=pyh29332c3_0
- types-python-dateutil=2.9.0.20250809=pyhd8ed1ab_0 - types-python-dateutil=2.9.0.20250809=pyhd8ed1ab_0
- typing-extensions=4.14.1=h4440ef1_0 - typing-extensions=4.14.1=h4440ef1_0
- typing-inspection=0.4.1=pyhd8ed1ab_0 - typing-inspection=0.4.1=pyhd8ed1ab_0
@ -412,6 +416,7 @@ dependencies:
- win_inet_pton=1.1.0=pyh7428d3b_8 - win_inet_pton=1.1.0=pyh7428d3b_8
- winpty=0.4.3=4 - winpty=0.4.3=4
- wrapt=1.17.2=py312h4389bb4_0 - wrapt=1.17.2=py312h4389bb4_0
- wsproto=1.2.0=pyhd8ed1ab_1
- xarray=2025.7.1=pyhd8ed1ab_0 - xarray=2025.7.1=pyhd8ed1ab_0
- xerces-c=3.2.5=he0c23c2_2 - xerces-c=3.2.5=he0c23c2_2
- xorg-libxau=1.0.12=h0e40799_0 - xorg-libxau=1.0.12=h0e40799_0
@ -428,4 +433,5 @@ dependencies:
- zlib-ng=2.2.5=h1608b31_0 - zlib-ng=2.2.5=h1608b31_0
- zstandard=0.23.0=py312h4389bb4_2 - zstandard=0.23.0=py312h4389bb4_2
- zstd=1.5.7=hbeecb71_2 - zstd=1.5.7=hbeecb71_2
prefix: D:\program\miniforge3\envs\lpdaac - pip:
- beautifulsoup4==4.12.3