"""
إعداد بيئة لمعالجة بيانات ميدانية حقيقية
"""

import os
import subprocess
import sys

print("🛠️ إعداد بيئة لمعالجة بيانات ميدانية حقيقية")
print("=" * 60)

# إنشاء الدلائل
data_dirs = [
    'real_field_data',
    'real_field_data/noaa',
    'real_field_data/nasa', 
    'real_field_data/processed'
]

for dir_path in data_dirs:
    os.makedirs(dir_path, exist_ok=True)
    print(f"📁 تم إنشاء: {dir_path}")

print("\n📦 تثبيت المكتبات المطلوبة (إذا لم تكن مثبتة):")

# قائمة المكتبات المطلوبة
required_libs = ['requests', 'pandas', 'numpy']

for lib in required_libs:
    try:
        __import__(lib)
        print(f"✅ {lib} مثبت بالفعل")
    except ImportError:
        print(f"⏳ جاري تثبيت {lib}...")
        subprocess.check_call([sys.executable, "-m", "pip", "install", lib])

print("\n🎯 مصادر البيانات الحقيقية:")
print("-" * 40)
print("1. NOAA Arctic Data: https://www.ncei.noaa.gov/")
print("2. NASA EarthData: https://earthdata.nasa.gov/")
print("3. WMO Observatories: https://worldweather.wmo.int/")

print("\n📋 مثال عملي لجلب بيانات:")
print("-" * 40)

example_code = '''
# جلب بيانات طقس قطبية من NOAA
import requests
import pandas as pd

def fetch_arctic_weather(station="PANC", days=7):
    """جلب بيانات طقس لـ 7 أيام من محطة قطبية"""
    # هذا مثال - تحتاج إلى API key حقيقي من NOAA
    base_url = "https://www.ncei.noaa.gov/cdo-web/api/v2/data"
    
    params = {
        'datasetid': 'GHCND',
        'stationid': f'GHCND:{station}',
        'startdate': '2024-01-01',
        'enddate': '2024-01-07',
        'limit': 1000
    }
    
    headers = {
        'token': 'YOUR_NOAA_TOKEN_HERE'  # تحتاج إلى token حقيقي
    }
    
    try:
        response = requests.get(base_url, params=params, headers=headers)
        return pd.DataFrame(response.json().get('results', []))
    except Exception as e:
        print(f"خطأ: {e}")
        return None

# بيانات حساساتك
sensors = [
    {"id": 1, "offset": -0.960, "alpha": 0.001594, "gain": 1.0981},
    {"id": 2, "offset": -0.680, "alpha": 0.001566, "gain": 1.0650},
    {"id": 3, "offset": -0.520, "alpha": 0.001551, "gain": 1.0510},
    {"id": 4, "offset": 0.700, "alpha": 0.001430, "gain": 0.9280}
]

print("✅ البيئة جاهزة لجلب ومعالجة بيانات حقيقية")
'''

print(example_code)

print("\n" + "=" * 60)
print("🚀 الخطوات التالية:")
print("1. سجل في NOAA للحصول على API key مجاني")
print("2. جرب مثال fetch_arctic_weather()")
print("3. استخدم البيانات الحقيقية لاختبار معايرة الحساسات")
print("=" * 60)
