Är det en officiell FAA-källa för tidszon för en flygplats?

8

Titta på detta svar , från TypeIA, till frågan Hur får man tidszon från flygplatskod (IATA / FAA) .

Den här personen rekommenderar NASR-databasen, vilket är bra för att det är officiellt FAA-saker, men som andra användare kan jag inte hitta någon information om tidszon för en flygplats i NASR.

Är denna information tillgänglig via NASR eller från någon annan officiell FAA-källa?

Jag vet att jag kan härleda informationen från lat / lång etc., men det jag söker är den officiella FAA-tidzonens beteckning för varje flygplats, om det finns en sådan sak.

EDIT: Tyvärr, för att vara klar, jag letar efter en digital version av dessa data som är lämpliga för användning i en databas eller app.

    
uppsättning boozedog 04.02.2017 14:56

6 svar

14

Varje flygplatsens tidszon är listad i flygplats- / anläggningsregisteret. Jag tror att FAA börjar kalla dessa "diagramtillskott" nu men. Du kan söka efter specifika flygplatser här men det ser ut som resultaten finns i .pdf formatera. Värdet du vill är cirkulerat i rött här:

EDIT:VadgällerdigitalakällorsaknastydligtidszoninformationfrånNASR-flygplatsens(APT)data här . Nästa bästa är Latitude / Longitude det verkar.

    
svaret ges 04.02.2017 17:51
6

Jag har åtminstone en partiell lösning för dig. Som jag nämnde i en tidigare kommentar har jag gjort lite arbete mot detta mål tidigare. Vad jag grundade på din förfrågan var att extrahera en del av den koden för att bygga ett API för flygplatser som inkluderar latitud-, longitud-, UTC-offset- och tidszonvärden.

Här är exempel på slutpunkterna.

För alla data i hela API: n kan du skicka en HTTP GET-förfrågan till https://airports-api.s3-us-west-2.amazonaws.com/ . Du får ett JSON-svar som innehåller alla flygplatser som en rad objekt. Det är ett stort svar.

För mer detaljerad information kan följande två RESTful mönster användas för respektive ICAO- eller IATA-flygplatskoder.

391.133

I båda fallen får du ett JSON-svar för just den flygplatsen. Det ska se ut så här.

391.133

Nu vet jag att du arbetar i PHP, men det finns säkert biblioteken i PHP som gör att du kan göra förfrågningar till API: n och parsa JSON till en PHP-array.

Också en ansvarsfriskrivning och en förfrågan. Mina uppgifter är ofullständiga. För närvarande är detta projekt på Github i form av en Middleman-webbplats som läser källan CSV och bygger ett statiskt API. Jag skulle gärna ha samarbetspartners hjälpa mig att expandera och förbättra källdata. Jag har också kod som jag kan extrahera från andra projekt som bestämmer UTC-offset- och tidszonsvärden om vi åtminstone vet latitud och longitud. Det kräver att du gör en begäran till Google Maps tidszon API som skulle bli dyrt om det gjordes på begäran, så Jag föredrar att fortsätta att smälta data och återuppbygga API som en statisk webbplats. Bli involverad i Github om du vill hjälpa.

Uppdatera

Jag hittade en annan datakälla som, en gång integrerad i mitt API, kommer att drastiskt förbättra antalet tillgängliga flygplatser. Arbetar på det snart.

    
svaret ges 07.02.2017 19:15
3

Jag var nyfiken på hur svårt det här skulle vara att göra, så jag började experimentera. Jag använder macOS Sierra, men de grundläggande stegen skulle vara desamma på andra plattformar.

Det första skulle vara att ladda ner .pdf-filerna. Det finns 9 av dem så du måste göra dessa steg 9 gånger. Automator gör det enkelt att konvertera PDF-filer till text. Många av texten är manglad, men linjen du bryr dig om är intakt. Öppna Automator och välj Workflow i rullgardinsmenyn. Släpp en av filerna i Automator-fönstret. Jag valde CS_SW_20170105.pdf. På fliken Åtgärder väljer du PDF-filer och väljer Utdrag PDF-text. Använd ikonen för att köra åtgärden. Det är förvånansvärt snabbt.

Nu har du en textfil som du kan manipulera med dina favoritverktyg för texthantering. Jag använder BBEdit. Först avlägsnade jag alla raderna och använd sedan kommandot Processlines Containing för att kopiera alla rader som innehåller UTC till en ny fil. Sedan blev jag av med alla saker efter tidszonen genom att göra en sökning (med GREP för att ersätta "N [0-9]. *" Med ingenting. Sedan tog jag bort radnummer och utrymme i början av filen.

Detta är ett urval av resultatet:

391.133

Det tar ungefär två minuter att bearbeta filerna. Det är inte helt rent, men du kan göra lite mer GREPing för att bli av med saker.

Tyvärr finns det fortfarande mycket skräp i filerna som kommer att ta lite manuell redigering för att fixa. Förmodligen inte mer än ett par timmar.

    
svaret ges 05.02.2017 22:18
1

Här är en officiell FAA-källa. Jag har hittat informationen ovärderlig när jag undersöker flygplatsens funktioner.

länk

När du väl valt de flygplatser du vill undersöka. Klicka på Skicka. På nästa sida visas fyra filer att ladda ner. Välj Data för flygplatsens faciliteter för att ladda ner CSV-filen (den är märkt en XLS-fil men det är faktiskt en CSV-fil).

Jag trodde vi fick magnetisk variation för ett ögonblick. Filen innehåller inte den information du begärde, men jag trodde att jag skulle behålla svaret här så att andra kan lära sig om flygplatsdatasidan.

    
svaret ges 06.02.2017 00:10
1

Den bästa lösningen jag kunde hitta är att använda data från openflights.org . Den har tidszoninformation men dess data om sommartid är inte så bra.

Jag skriver i .NET och hanterar det här problemet. Jag använde NodeTime och TimeZoneConverter bibliotek.

Jag importerade openflights.org-data till min databas. Från dessa data använde jag "Land", "Stad" och "Tidzon" fält. Data från "TimeZone" -fältet Jag använde som säkerhetskopieringsdata - om jag inte kan hitta TimeZoneInfo för en viss flygplats.

Följande kod hämtar nuvarande tidszonförskjutning för en viss plats.

391.133

NodeTimes TzdbZoneLocations-objekt innehåller data om latitud och longitud för ett visst objekt, så det är också möjligt att använda latitud och longitud från openflights.org-data för att matcha flygplatsen till sin tidszon.

    
svaret ges 21.12.2017 23:13
-2

Tidszonen är alltid densamma för varje stat, korrekt? Det verkar som att allt du behöver är staten. Förmodligen är det därför inte deras officiella uppgifter med en tidszon för varje flygplats. Från eNASR skrev jag bara "*" för "Airport ID" och (efter ett tag) fick över 19.000 flygplatser. De har åtminstone en statskod. Jag antar att det är relativt enkelt att spara och analysera den data.

Ta en titt på OurAirports . Klicka på "Site Info" överst och sedan "Öppna data nedladdningar". Du kan ladda ner en CSV med över 50 000 flygplatser i världen med en statskod för var och en i USA.

    
svaret ges 26.02.2017 06:24