up osm cal extractor

This commit is contained in:
Tykayn 2025-09-18 22:18:25 +02:00 committed by tykayn
parent 8613d218cd
commit 6df72c46b8
2 changed files with 15 additions and 3 deletions

View file

@ -6,6 +6,15 @@ This script fetches events from the OpenStreetMap Calendar RSS feed
and adds them to the OpenEventDatabase if they don't already exist. and adds them to the OpenEventDatabase if they don't already exist.
RSS Feed URL: https://osmcal.org/events.rss RSS Feed URL: https://osmcal.org/events.rss
Environment Variables:
DB_NAME: The name of the database (default: "oedb")
DB_HOST: The hostname of the database server (default: "localhost")
DB_USER: The username to connect to the database (default: "")
POSTGRES_PASSWORD: The password to connect to the database (default: None)
These environment variables can be set in the system environment or in a .env file
in the project root directory.
""" """
import json import json
@ -20,7 +29,7 @@ from datetime import datetime, timedelta
# Add the parent directory to the path so we can import from oedb # Add the parent directory to the path so we can import from oedb
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
from oedb.utils.db import db_connect from oedb.utils.db import db_connect, load_env_from_file
from oedb.utils.logging import logger from oedb.utils.logging import logger
# RSS Feed URL for OSM Calendar # RSS Feed URL for OSM Calendar
@ -407,6 +416,9 @@ def main():
Main function to fetch OSM Calendar events and add them to the database. Main function to fetch OSM Calendar events and add them to the database.
""" """
logger.info("Starting OSM Calendar extractor") logger.info("Starting OSM Calendar extractor")
# Load environment variables from .env file if it exists
load_env_from_file()
# Fetch events from the OSM Calendar RSS feed # Fetch events from the OSM Calendar RSS feed
items = fetch_osm_calendar_data() items = fetch_osm_calendar_data()

View file

@ -5,7 +5,7 @@ SNCF Travaux Extractor for the OpenEventDatabase.
This script fetches railway work schedules from the SNCF open data API This script fetches railway work schedules from the SNCF open data API
and adds them to the OpenEventDatabase. and adds them to the OpenEventDatabase.
API URL: https://data.sncf.com/api/explore/v2.1/catalog/datasets/interceptions-programmees-sur-ligne/records?limit=200 API URL: https://data.sncf.com/api/explore/v2.1/catalog/datasets/interceptions-programmees-sur-ligne/records?limit=100
Example data format: Example data format:
{ {
@ -42,7 +42,7 @@ from oedb.utils.db import db_connect
from oedb.utils.logging import logger from oedb.utils.logging import logger
# API URL for SNCF open data # API URL for SNCF open data
API_URL = "https://data.sncf.com/api/explore/v2.1/catalog/datasets/interceptions-programmees-sur-ligne/records?limit=200" API_URL = "https://data.sncf.com/api/explore/v2.1/catalog/datasets/interceptions-programmees-sur-ligne/records?limit=100"
def fetch_sncf_data(): def fetch_sncf_data():
""" """