feat(config): make ArcGIS data source URLs configurable

- Add ARCGIS_CABLE_URL, ARCGIS_LANDING_POINT_URL, ARCGIS_CABLE_LANDING_RELATION_URL to config
- Use @property to read URL from settings in collectors
- URLs can now be configured via environment variables
This commit is contained in:
rayd1o
2026-03-12 17:08:18 +08:00
parent 14d11cd99d
commit 99771a88c5
4 changed files with 19 additions and 16 deletions

View File

@@ -9,6 +9,7 @@ from datetime import datetime
import httpx
from app.services.collectors.base import BaseCollector
from app.core.config import settings
class ArcGISCableCollector(BaseCollector):
@@ -18,7 +19,9 @@ class ArcGISCableCollector(BaseCollector):
frequency_hours = 168
data_type = "submarine_cable"
base_url = "https://services.arcgis.com/6DIQcwlPy8knb6sg/arcgis/rest/services/SubmarineCables/FeatureServer/2/query"
@property
def base_url(self) -> str:
return settings.ARCGIS_CABLE_URL
async def fetch(self) -> List[Dict[str, Any]]:
params = {"where": "1=1", "outFields": "*", "returnGeometry": "true", "f": "geojson"}