cyterat/deepstate-map-data
GitHub: cyterat/deepstate-map-data
每日自动更新的乌克兰领土占领状态 GeoJSON 数据集,用于追踪和记录俄罗斯占领区域的地理边界变化。
Stars: 21 | Forks: 6
[](https://www.python.org/downloads/release/python-3124/)
[](https://github.com/cyterat/deepstate-map-data/actions/workflows/update.yml)
# 🔫 DeepState Map 数据
`data` 文件夹中的每个 GeoJSON 都包含最新的多边形(Multipolygon),代表俄罗斯占领的乌克兰领土。
**命名格式:**
`deepstatemap_data_<更新日期>.geojson`
**更新频率:**
每日 03:00 UTC。
```
To Do:
- Write a simple script using notebook code. ✅
- Set up Github Actions for daily updates. ✅
- Create a single compressed GeoJSON consolidating all data so far. ✅
- Write another script for Github Actions for daily updates of the above mentioned GeoJSON. ✅
```
## 📚 `deepstate-map-data.geojson.gz` -- 统一压缩数据集
🟡 __重要提示:__ `data` 文件夹中的所有文件保持不变,并继续每日更新。
新的压缩文件包含当前存储在 `data` 文件夹中的所有历史几何图形及其各自的更新日期。
**命名格式:**
`deepstate-map-data.geojson.gz`
**更新频率:**
每日,大约 03:00 UTC。
_示例数据结构:_
| id | date | geometry | | |
|-----|------------|---------------------------------------------------|---|---|
| 0 | 2024-07-08 | MULTIPOLYGON (((35.20146 45.52334, 35.31126 45... | | |
| 1 | 2024-07-09 | MULTIPOLYGON (((35.20146 45.52334, 35.31126 45... | | |
| ... | ... | ... | | |
\* _`date` 代表更新日期。_
### __访问压缩数据__
如果您的应用程序或工具不支持 gzip 压缩的 GeoJSON 文件,以下是我个人用来访问/解压数据的几种不同方法。
__Python(压缩时)__
```
import geopandas as gpd
from io import StringIO
import gzip
with gzip.open("deepstate-map-data.geojson.gz", "rt", encoding="utf-8") as f:
geojson_str = f.read()
gdf = gpd.read_file(StringIO(geojson_str))
print(gdf.head())
```
__Python(未压缩时)__
```
import geopandas as gpd
file = "deepstate-map-data.geojson"
gdf = gpd.read_file(file)
print(gdf.head())
```
__Linux 终端(解压)__
```
gunzip -c deepstate-map-data.geojson.gz > deepstate-map-data.geojson
```
__Windows 7-Zip 压缩工具(解压)__
```
1. Right-click `deepstate-map-data.geojson.gz`
2. Select "Extract Here"
3. The file will decompress to `deepstate-map-data.geojson`
```
### ⚠️ __性能警告__
由于许多要素共享位置且每天变化很小,使用 __geojson.io__ 等工具一次渲染所有记录(截至 2025 年约为 400 条)可能会导致严重延迟。
如果您过去遇到过类似的性能问题,请尝试在使用性能较弱的渲染工具之前过滤 `date` 或使用样本子集。
_下图:在没有过滤器的情况下加载完整数据集时多层堆叠的示例_


标签:DeepState Map, ESC4, GeoJSON, Geopandas, GIS, GitHub Actions, Gzip, HTTP/HTTPS抓包, OSINT, Python, 俄乌冲突, 地图数据, 地理空间数据, 地缘政治, 多边形数据, 态势感知, 数据压缩, 无后门, 自动化更新, 自动笔记, 逆向工具