Southwest Airlines WN4172 (SWA4172) SMF 到 SAN, RSW 到 PVD, MCO 到 MSY, BUR 到 OAK, LAS 到 PDX, PHX 到 RDU, MSY 到 BNA, BNA 到 MKE, PVD 到 BWI, BWI 到 SAT, MCO 到 MDW, DAL 到 IAH, BWI 到 ROC, MDW 到 DAL, SDF 到 BWI, IAH 到 MSY, ROC 到 MCO (2024)

false

false Southwest Airlines WN4172 (SWA4172) SMF 到 SAN, RSW 到 PVD, MCO 到 MSY, BUR 到 OAK, LAS 到 PDX, PHX 到 RDU, MSY 到 BNA, BNA 到 MKE, PVD 到 BWI, BWI 到 SAT, MCO 到 MDW, DAL 到 IAH, BWI 到 ROC, MDW 到 DAL, SDF 到 BWI, IAH 到 MSY, ROC 到 MCO (1)

11. Aug 2024

已着陆
飞机已经降落。它已抵达23 小时 之前(早了9分钟)。

PHL

Philadelphia
航站楼: E
门: E16

->

1h 43m
1,101km / 679mi
(Direct: 1,074km, +2%)

MDW

Chicago
门: B9

11 Aug 14:21EDT
11 Aug 14:10
18:21 UTC
晚了11分钟

11 Aug 15:05 CDT
11 Aug 15:15
20:05 UTC
早了9分钟
" : ""}Southwest Airlines WN4172 (SWA4172) SMF 到 SAN, RSW 到 PVD, MCO 到 MSY, BUR 到 OAK, LAS 到 PDX, PHX 到 RDU, MSY 到 BNA, BNA 到 MKE, PVD 到 BWI, BWI 到 SAT, MCO 到 MDW, DAL 到 IAH, BWI 到 ROC, MDW 到 DAL, SDF 到 BWI, IAH 到 MSY, ROC 到 MCO (4)`; if (activeHex in marker) { liveMap.removeLayer(marker[activeHex]); } const m = L.marker(activeMarker.getLatLng(), { icon: L.divIcon({ className: 'flt-marker', html: htmlc }), alt: activeHex, opacity: lp[7] != '' ? 0.9 : 0.6 }).addTo(liveMap).on('click', onPlaneClick); marker[activeHex] = m; document.getElementById(`mi-${activeHex}`).style.transform = `rotate(${lp[2]}deg)`; activeMarker = null; } activeHex = null; liveTrack = null; liveMarker = null; estTrack = null; document.getElementById('liveMapContainer').style.display = 'none'; document.getElementById('mapSearch').style.display = 'block';} /** * Recalculates the new position of a marker based on the time elapsed and its previous state. * @param {Object} liveMap */async function updateCalc(liveMap) { if (recalcInProg || liveMap.getZoom() < 6) { return; } recalcInProg = true; for (const [key, prevPos] of Object.entries(lastPos)) { if (key in marker && prevPos[3] >= 50 && !prevPos[6]) { const speed = prevPos[3] || 0; const interval = Date.now() - prevPos[4]; const dist = speed * interval / 1000 / 3600 * 1852; if (dist < 20) { continue; } // calculate next position const lat1 = toRad(prevPos[0]); const lon1 = toRad(prevPos[1]); const brng = toRad(prevPos[2]); const lat2 = Math.asin(sin(lat1) * cos(dist / r_earth) + cos(lat1) * sin(dist / r_earth) * cos(brng)); const lon2 = lon1 + Math.atan2(sin(brng) * sin(dist / r_earth) * cos(lat1), cos(dist / r_earth) - sin(lat1) * sin(lat2)); const lat2d = toDeg(lat2); const lon2d = toDeg(lon2); lastPos[key] = [lat2d, lon2d, prevPos[2], prevPos[3], Date.now(), prevPos[5], prevPos[6], prevPos[7]]; marker[key].setLatLng([lat2d, lon2d]); if (liveTrack && activeMarker == key) { const l = liveTrack.getLatLngs(); l.push(L.latLng(lat2d, lon2d, prevPos[5])); try { liveTrack.setLatLngs(l); } catch (e) { /* Catch error silently. */ } if (activeDest) { const tn = L.latLng(lat2d, lon2d); liveMap.removeLayer(estTrack); const arcOptions = { color: "lightgray", noClip: true, vertices: 100 }; estTrack = t.lng < tn.lng ? L.Polyline.Arc(activeDest, tn, arcOptions) : L.Polyline.Arc(tn, activeDest, arcOptions); estTrack.addTo(liveMap); tracks.push(estTrack); } } } } recalcInProg = false;}/** * Fetches data from a specific URL, handles errors and returns the JSON response. * @param {string} url */async function getData(url) { const response = await fetch(url, { headers: { Authorization: auth_token } }); if (!response.ok) { handleFetchErrors(response); return null; } if (sf === "") { document.getElementById("liveUpdErr").style.display = 'none'; document.getElementById("liveUpdNotFound").style.display = 'none'; } return response.json();}/** * Handles errors during fetch call * @param {Object} response */function handleFetchErrors(response) { if (sf !== "") return; const liveUpdErr = document.getElementById("liveUpdErr"); const liveUpdNotFound = document.getElementById("liveUpdNotFound"); const liveMapContainer = document.getElementById("liveMapContainer"); const mapSearch = document.getElementById("mapSearch"); if (response.status !== 404) { refreshsActive = false; liveUpdNotFound.style.display = 'none'; liveUpdErr.style.display = 'block'; liveMapContainer.style.display = 'none'; mapSearch.style.display = 'block'; document.getElementById("liveUpdErrCode").innerText = response.status; } else { liveUpdErr.style.display = 'none'; liveMapContainer.style.display = 'none'; mapSearch.style.display = 'block'; liveUpdNotFound.style.display = 'block'; }}async function updateMap(liveMap, fromZoom, clickHex) { if (documentIsHidden()) return; const bounds = liveMap.getBounds(); const url = constructURL(bounds, liveMap.getZoom(), clickHex); if (updateInProgressOrTooSoon(fromZoom)) return; recalcInProg = true; lastUpdate = Date.now(); updateInProg = true; const ld = await getData(url); if (!ld) { updateInProg = false; return; } processMapData(liveMap, ld, fromZoom, clickHex);}function documentIsHidden() { return typeof document.hidden !== "undefined" && document.hidden;}function constructURL(bounds, zoom, clickHex) { const widthText = screenWidth > 1000 ? "large" : "small"; const hexIncl = clickHex ? `?incl=${clickHex}&` : "?"; return `/en/live/map/${Math.floor(bounds['_northEast'].lat * 1e5)}/${Math.floor(bounds['_southWest'].lat * 1e5)}/` + `${Math.floor(bounds['_southWest'].lng * 1e5)}/${Math.floor(bounds['_northEast'].lng * 1e5)}/${zoom}/${widthText}` + hexIncl + `${Math.floor(Date.now() / 5000)}`;}function updateInProgressOrTooSoon(fromZoom) { if (updateInProg) { return true; } const freq = fromZoom ? minZoomFreq : minRefreshFreq; return Date.now() - lastUpdate < freq;}function processMapData(liveMap, ld, fromZoom, clickHex) { newMarker = {}; arcs = []; curArc = []; arcCol = ""; prevCoord = []; document.getElementById("nr_flights_disp").innerText = ld["f"]; document.getElementById("nr_flights_tot").innerText = ld["t"]; const st = screenWidth / ld["f"] > 5; const redraw = st !== hadTitles; for (const entr in ld["m"]) { const e = ld["m"][entr]; handleMarker(liveMap, e, redraw, st); } hadTitles = st; removeUnusedMarkers(liveMap); updateInProg = false; recalcInProg = false; firstUpd = false; if (clickHex) { marker[clickHex].fire('click'); }}function handleMarker(liveMap, e, redraw, st) { if (e[4] == null || e[5] == null) { return; } const currentPos = L.latLng(e[4], e[5]); if (redraw && e[0] in marker) { liveMap.removeLayer(marker[e[0]]); delete marker[e[0]]; } if (e[0] in marker) { updateExistingMarker(e, currentPos); } else { createNewMarker(liveMap, e, currentPos, st); }}function updateExistingMarker(e, currentPos) { const m = marker[e[0]]; m.setLatLng(currentPos); lastPos[e[0]] = [e[4], e[5], e[2], e[6], Date.now(), e[7], e[8], e[9]]; newMarker[e[0]] = true; document.getElementById("mi-" + e[0]).style.transform = "rotate(" + e[2] + "deg)";}function createNewMarker(liveMap, e, currentPos, st) { var des = TypeDesignatorIcons[e[10]]; if (!des) { des = DefaultIcon; } const htmlc = (st ? "

" + e[9] + "

" : "") + "Southwest Airlines WN4172 (SWA4172) SMF 到 SAN, RSW 到 PVD, MCO 到 MSY, BUR 到 OAK, LAS 到 PDX, PHX 到 RDU, MSY 到 BNA, BNA 到 MKE, PVD 到 BWI, BWI 到 SAT, MCO 到 MDW, DAL 到 IAH, BWI 到 ROC, MDW 到 DAL, SDF 到 BWI, IAH 到 MSY, ROC 到 MCO (5)"; const m = L.marker(currentPos, { icon: L.divIcon({ className: 'flt-marker', html: htmlc }), alt: e[0], opacity: e[3] ? 0.9 : 0.6 }).addTo(liveMap).on('click', onPlaneClick); marker[e[0]] = m; markerType[e[0]] = des; newMarker[e[0]] = true; lastPos[e[0]] = [e[4], e[5], e[2], e[6], Date.now(), e[7], e[8], e[9]]; document.getElementById("mi-" + e[0]).style.transform = "rotate(" + e[2] + "deg)";}function removeUnusedMarkers(liveMap) { for (const m in marker) { if (!(m in newMarker) && m != activeHex) { liveMap.removeLayer(marker[m]); delete marker[m]; } }}function onPlaneClick(e) { if (sf != "") { return; } updateInProg = true; const liveMap = e.target._map; const hex = e.target.options.alt; if (hex == activeHex) { return; } updateTrack(liveMap, `/${lang}/live/track_hex/${hex}`, hex, e);}function onMoveend(e) { localStorage.setItem('livemapCenter', JSON.stringify(e.target.getCenter())); localStorage.setItem('livemapZoom', e.target.getZoom()); updateMap(e.sourceTarget, false); } function onZoomed(e) { updateMap(e.sourceTarget, true) }// Define a utility function for creating a markerfunction createMarker(latLng, iconClass, htmlContent, alt, opacity) { return L.marker(latLng, { icon: L.divIcon({ className: iconClass, html: htmlContent }), alt: alt, opacity: opacity, }).on('click', onPlaneClick);}function updateTrack(liveMap, url, hex, e) { let prevCoord = null; let prevCoordFull = null; getData(url).then(function (ld) { if (!ld) { return; } const hadNoHex = hex === ""; if (hex === "" && url.includes("hex")) { hex = ld[0]; } else if (hex === "") { hex = ld[1]; } if (activeMarker && hex !== activeHex) { // Reset old marker const lp = lastPos[activeHex]; const des = markerType[activeHex]; const htmlc = (hadTitles ? "

" + lp[7] + "

" : "") + "Southwest Airlines WN4172 (SWA4172) SMF 到 SAN, RSW 到 PVD, MCO 到 MSY, BUR 到 OAK, LAS 到 PDX, PHX 到 RDU, MSY 到 BNA, BNA 到 MKE, PVD 到 BWI, BWI 到 SAT, MCO 到 MDW, DAL 到 IAH, BWI 到 ROC, MDW 到 DAL, SDF 到 BWI, IAH 到 MSY, ROC 到 MCO (6)`; liveMap.removeLayer(marker[activeHex]); const m = L.marker(activeMarker.getLatLng(), { icon: L.divIcon({ className: 'flt-marker', html: htmlc }), alt: activeHex, opacity: lp[7] != '' ? 0.9 : 0.6 }).addTo(liveMap).on('click', onPlaneClick); marker[activeHex] = m; markerType[activeHex] = des; document.getElementById("mi-" + activeHex).style.transform = "rotate(" + lp[2] + "deg)"; activeMarker = m; } // Set new marker const target = e ? e.target : marker[hex]; if (hex !== activeHex && target) { const lp = lastPos[hex]; const des = markerType[hex]; const htmlc = (hadTitles ? "

" + lp[7] + "

" : "") + "Southwest Airlines WN4172 (SWA4172) SMF 到 SAN, RSW 到 PVD, MCO 到 MSY, BUR 到 OAK, LAS 到 PDX, PHX 到 RDU, MSY 到 BNA, BNA 到 MKE, PVD 到 BWI, BWI 到 SAT, MCO 到 MDW, DAL 到 IAH, BWI 到 ROC, MDW 到 DAL, SDF 到 BWI, IAH 到 MSY, ROC 到 MCO (7)`; const m = L.marker(target.getLatLng(), { icon: L.divIcon({ className: 'flt-marker', html: htmlc }), alt: hex, opacity: ld[3] ? 0.9 : 0.6 }).addTo(liveMap).on('click', onPlaneClick); marker[hex] = m; liveMap.removeLayer(target); activeMarker = m; if (!e) { document.getElementById("mi-" + hex).style.transform = "rotate(" + lp[2] + "deg)"; } } refreshsActive = true; recalcInProg = true; arcs = []; curArc = []; arcCol = ""; prevCoord = []; track = ld[23]; if (sf === "") { if (ld[0] !== "") { domElements.get("liveFlnr").href = `/${lang}/live/flight_details/${ld[10]}`; domElements.get("liveFlnr").innerText = ld[0]; } else { domElements.get("liveFlnr").innerText = ""; domElements.get("liveFlnr").href = ""; } if (ld[21]) { domElements.get("liveAirline").innerText = ld[21]; } else { domElements.get("liveAirline").innerText = ""; } domElements.get("liveHex").innerText = ld[1]; if (ld[2] !== "" && ld[2] !== ld[0]) { domElements.get("liveCallsign").innerText = ld[2]; } else { domElements.get("liveCallsign").innerText = ""; } if (ld[3] !== "") { domElements.get("liveReg").href = `/${lang}/planes/${ld[3]}`; domElements.get("liveRegBlock").style.display = "block"; domElements.get("liveReg").innerText = ld[3]; } else { domElements.get("liveReg").innerText = "NA"; domElements.get("liveRegBlock").style.display = "none"; domElements.get("liveReg").href = ""; } if (ld[4] !== "NA") { if (domElements.get("liveRouteContainer")) { domElements.get("liveRouteContainer").style.display = "block"; } domElements.get("liveDep").innerText = ld[5]; domElements.get("liveDepFlag").src = "/staticfiles/" + ld[6].toLowerCase() + ".svg"; domElements.get("liveDep").href = `/${lang}/airport/${ld[5]}/${ld[4]}`; domElements.get("liveDepTime").innerText = ld[11]; if (ld[19] && ld[19] !== "+0") { domElements.get("liveDepDelay").innerText = ld[19]; } else { domElements.get("liveDepDelay").innerText = ""; } } else { domElements.get("liveDep").innerText = "NA"; domElements.get("liveDepTime").innerText = ""; domElements.get("liveDepDelay").innerText = ""; if (domElements.get("liveRouteContainer")) { domElements.get("liveRouteContainer").style.display = "none"; } } if (ld[7] !== "NA") { if (domElements.get("liveRouteContainer")) { domElements.get("liveRouteContainer").style.display = "block"; } domElements.get("liveArr").innerText = ld[8]; domElements.get("liveArrFlag").src = "/staticfiles/" + ld[9].toLowerCase() + ".svg"; domElements.get("liveArr").href = `/${lang}/airport/${ld[8]}/${ld[7]}`; domElements.get("liveArrTime").innerText = ld[12]; if (ld[20] && ld[20] !== "+0") { domElements.get("liveArrDelay").innerText = ld[20]; } else { domElements.get("liveArrDelay").innerText = ""; } } else { domElements.get("liveArr").innerText = "NA"; domElements.get("liveArrTime").innerText = ""; domElements.get("liveArrDelay").innerText = ""; if (domElements.get("liveRouteContainer")) { domElements.get("liveRouteContainer").style.display = "none"; } } if (ld[10] !== null) { domElements.get("liveLink").href = `/${lang}/live/flight_details/${ld[10]}`; domElements.get("liveLink").style.display = "block"; } else { domElements.get("liveLink").style.display = "none"; } const lt = track[track.length - 1]; domElements.get("liveAlt").innerText = lt[3] + " ft"; domElements.get("liveSpeed").innerText = lt[5] + " kts"; domElements.get("liveTrack").innerText = lt[4] + "°"; if (ld[18] !== "") { domElements.get("planePic").src = ld[18]; domElements.get("planePic").style.display = "block"; } else { domElements.get("planePic").style.display = "none"; } if (ld[22]) { domElements.get("liveType").innerText = ld[22]; domElements.get("liveTypeBlock").style.display = "block"; } else { domElements.get("liveTypeBlock").style.display = "none"; domElements.get("liveType").innerText = "NA"; } } // update upper items if relevant const liveStatusInd = domElements.get("liveStatusInd"); const liveStatusText = domElements.get("liveStatusText"); if (liveStatusInd && true) { if (!domElements.has("liveTrackHB")) { domElements.set("liveAltHB", document.getElementById("liveAltHB")); domElements.set("liveSpeedHB", document.getElementById("liveSpeedHB")); domElements.set("liveTrackHB", document.getElementById("liveTrackHB")); domElements.set("liveDataHB", document.getElementById("liveDataHB")); } liveStatusInd.innerText = ld[17] ? "飞行中" : "已着陆"; const lt = ld[23][ld[23].length - 1]; if (domElements.get("depTimeLiveHB")) { domElements.get("depTimeLiveHB").innerText = ld[11]; domElements.get("arrTimeLiveHB").innerText = ld[12]; domElements.get("depDelHB").innerText = ld[19]; domElements.get("arrDelHB").innerText = ld[20]; domElements.get("liveAltHB").innerText = lt[3]; domElements.get("liveSpeedHB").innerText = lt[5]; domElements.get("liveTrackHB").innerText = lt[4]; } if (!ld[17]) { domElements.get("liveDataHB").style.display = "none"; } } if (liveStatusText && ld[17]) { liveStatusText.innerText = ""; } if (ld[13] !== null && ld[14] !== null && track.length > 0 && Math.abs(ld[13] - track[0][1] / 1e5) > 1 && Math.abs(ld[14] - track[0][2] / 1e5) > 1) { arcs.push([[[ld[13], ld[14]], [track[0][1] / 1e5, track[0][2] / 1e5]], "lightgray", true]); } prevCoord = null; prevCoordFull = null; lp = null; for (const entr in track) { const p = track[entr]; if (p[1] === null || p[2] === null || p.length == 0) { continue; } let col = "green"; if (prevCoord && (Math.abs(prevCoord[0] - p[1] / 1e5) > 1 || Math.abs(prevCoord[1] - p[2] / 1e5) > 1)) { arcs.push([curArc, arcCol, false]); arcCol = ""; arcs.push([[[prevCoord[0], prevCoord[1]], L.latLng(p[1] / 1e5, p[2] / 1e5, p[3])], "lightgray", true]); curArc = [L.latLng(p[1] / 1e5, p[2] / 1e5, p[3])]; } else if (arcCol !== col) { if (curArc.length > 0) { arcs.push([curArc, arcCol, false]); } if (prevCoord) { curArc = [prevCoord]; } else { curArc = []; } arcCol = col; } prevCoordFull = [p[1] / 1e5, p[2] / 1e5, p[4], p[5], Date.now(), p[3], false, ld[0]]; prevCoord = L.latLng(p[1] / 1e5, p[2] / 1e5, p[3]); curArc.push(prevCoord); if (p[4] !== 0) { lastTrack = p[4]; } } if (curArc.length > 0) { arcs.push([curArc, arcCol]); } if (ld[15] !== null && ld[16] !== null && prevCoord && (Math.abs(prevCoord.lat - ld[15]) > 0.1 || Math.abs(prevCoord.lng - ld[16]) > 0.1)) { arcs.push([[prevCoord, [ld[15], ld[16]]], "lightgray", true]); activeDest = L.latLng(ld[15], ld[16]); } for (const idx in tracks) { tracks[idx].remove(); } tracks = []; for (const idx in arcs) { const a = arcs[idx]; if (a[2]) { if (a[0][0][1] > a[0][1][1]) { const temp = a[0][0]; a[0][0] = a[0][1]; a[0][1] = temp; } p = L.Polyline.Arc(a[0][0], a[0][1], { color: a[1], noClip: true, vertices: 100 }); estTrack = p; } else { p = L.hotline(a[0], { palette: { 0: 'lightgray', 0.1: 'green', 0.5: 'yellow', 0.7: 'orange', 1: 'red' }, min: 0, max: 36000, outlineWidth: 0, weight: 4, noClip: true }); liveTrack = p; } p.addTo(liveMap); tracks.push(p); } if (prevCoordFull) { lastPos[hex] = prevCoordFull; } if (prevCoord) { if (e) { const i = e.sourceTarget; i.setLatLng(prevCoord); activeMarker = i; if (lastTrack) { document.getElementById("mi-" + hex).style.transform = "rotate(" + lastTrack + "deg)"; } if (!refreshs && !viewSet) { liveMap.setView(prevCoord, 8); } } else { if (!activeMarker) { var des = TypeDesignatorIcons[ld[22]]; if (!des) { des = DefaultIcon; } activeMarker = L.marker(prevCoord, { icon: L.icon({ iconUrl: svgPathToURI(des.path,des.size,false,true), iconSize: liveMap._zoom > 7 ? sizes[0] : sizes[1] }), rotationAngle: prevCoordFull[2], rotationOrigin: "center center", opacity: 0.8, title: hex }).addTo(liveMap); } else { activeMarker.setLatLng(prevCoord); } } if (e || hadNoHex) { // Only set refresh on first click or for live flight tracks (no hex given then) if (trackRefresh) { window.clearInterval(trackRefresh); } if (ld[17]) { trackRefresh = window.setInterval(function () { if (refreshsActive) { updateTrack(liveMap, url, hex, null); } }, 3000); } } } if (!refreshs && !viewSet) { liveMap.setView(prevCoord, 8); } if (sf === "") { domElements.get("liveMapContainer").style.display = 'block'; if (document.getElementById("mapSearch")) { document.getElementById("mapSearch").style.display = 'none'; } } activeHex = hex; updateInProg = false; recalcInProg = false; });} function buildLiveMap(liveMap,activeHex) { const osmUrl = 'https://a.tile.openstreetmap.org/{z}/{x}/{y}.png'; const osmAttrib = '© OpenStreetMap'; const osm = new L.TileLayer(osmUrl, { attribution: osmAttrib }); liveMap.attributionControl.setPrefix(''); liveMap.addLayer(osm); updateMap(liveMap, false,activeHex); liveMap.on('zoomend', onZoomed); liveMap.on('moveend', onMoveend); } function buildTrackMap(liveMap, url) { const osmUrl = 'https://a.tile.openstreetmap.org/{z}/{x}/{y}.png'; const osmAttrib = '© OpenStreetMap'; const osm = new L.TileLayer(osmUrl, { attribution: osmAttrib }); liveMap.attributionControl.setPrefix(''); liveMap.addLayer(osm); updateTrack(liveMap, url, "", null); } loadScript("/js/leaflet.js?20220413" ,function() { // set up the map map = new L.map('map-flight',{sleep:false,minZoom:0, gestureHandling: false}); map.whenReady(() => map.gestureHandling?._handleMouseOver?.()); // create the tile layer with correct attribution map.fitBounds([[39.87194,-87.7525],[41.78611,-75.24111]]); viewSet = true; dep=[39.87194,-75.24111]; arr=[41.78611,-87.7525]; sf = "184053117"; buildTrackMap(map,"/zh/live/track/184053117"); L.marker(dep).addTo(map); L.marker(arr).addTo(map); });

海拔高度

ft

速度

kts

追踪

°

航空公司

名称
Southwest Airlines

IATA / ICAO
WN / SWA

国家
United States
航空公司信息

飞机

机型
N8568Z Boeing B737-800

识别码 ICAO
ABC12A

座位配置
175 座位
175 经济舱

第一班航班
Apr 2018
6 年 之前
飞机信息

一般路线信息

航班时间
2 hours 8 min

航班 / 周
36 航班

准时
13 航班/周 已延误
63% 准时表现

座位 / 周
162 座位/航班
24,858 座位/周

近期航班

日期 航班号 已出发的 已到达的
11. Aug
已着陆
WN4172 PHL -> MDW Philadelphia
晚了11分钟
Philadelphia (PHL / KPHL)
11 Aug 14:10EDT
Chicago
早了9分钟
Chicago (MDW / KMDW)
11 Aug 15:15CDT
11 Aug 14:21
晚了11分钟
11 Aug 15:05
早了9分钟
04. Aug
已着陆
WN4172 BWI -> SAT Baltimore
晚了3 小时 7 分钟
Baltimore (BWI / KBWI)
04 Aug 21:00EDT
San Antonio
晚了2 小时 38 分钟
San Antonio (SAT / KSAT)
04 Aug 23:30CDT
05 Aug 00:07
晚了3 小时 7 分钟
05 Aug 02:08
晚了2 小时 38 分钟
03. Aug
已着陆
WN4172 RSW -> PVD Fort Myers
晚了3分钟
Fort Myers (RSW / KRSW)
03 Aug 13:00EDT
Providence
早了20分钟
Providence (PVD / KPVD)
03 Aug 16:05EDT
03 Aug 13:03
晚了3分钟
03 Aug 15:44
早了20分钟
31. Jul
已着陆
WN4172 PVD -> BWI Providence
晚了1 小时 57 分钟
Providence (PVD / KPVD)
31 Jul 19:25EDT
Baltimore
晚了1 小时 29 分钟
Baltimore (BWI / KBWI)
31 Jul 20:50EDT
31 Jul 21:22
晚了1 小时 57 分钟
31 Jul 22:19
晚了1 小时 29 分钟
30. Jul
已着陆
WN4172 PVD -> BWI Providence
晚了1 小时 36 分钟
Providence (PVD / KPVD)
30 Jul 19:25EDT
Baltimore
晚了1 小时 7 分钟
Baltimore (BWI / KBWI)
30 Jul 20:50EDT
30 Jul 21:01
晚了1 小时 36 分钟
30 Jul 21:57
晚了1 小时 7 分钟

显示日历

要求赔偿

航班延误时有发生,但这并不意味着您必须接受。您有权要求获得600欧元/700美元 的赔偿,如果您的航班在过去三年中出现过 延误、取消或者超额预定

航班日历

2024
August 3 航班
July 19 航班
June 20 航班
May 44 航班
April 32 航班
March 4 航班

2023
September 1 航班
August 2 航班

2022
September 1 航班
August 4 航班
July 5 航班
June 3 航班
April 2 航班
March 38 航班
February 22 航班
January 12 航班

2021
December 18 航班
November 8 航班
October 12 航班
September 17 航班
August 5 航班
July 4 航班
June 4 航班
May 15 航班
April 6 航班
March 14 航班
February 48 航班
January 44 航班

2020
December 32 航班
November 12 航班
April 4 航班
March 6 航班
February 8 航班
January 10 航班

2019
December 11 航班
November 9 航班
October 4 航班
September 24 航班
August 24 航班
July 25 航班
June 20 航班
May 6 航班
April 10 航班
March 14 航班
February 12 航班
January 9 航班

2018
December 23 航班
November 8 航班
October 24 航班
September 39 航班
August 1 航班
July 5 航班
June 5 航班
May 8 航班
April 7 航班
March 8 航班
February 22 航班
January 23 航班

2017
December 21 航班
November 15 航班
October 10 航班
September 1 航班

同一航空公司的近期航班

日期 / 状态 航班号 航空公司 出发 到达
11. Aug
已着陆
WN4507 SWA4507 MCO -> STL Southwest Airlines
WN/SWA
11 Aug 21:10EDT
18 小时 之前
11 Aug 22:15CDT
16 小时 之前
11. Aug
已着陆
WN2888 SWA2888 PHX -> LAX Southwest Airlines
WN/SWA
11 Aug 17:50MST
18 小时 之前
11 Aug 18:42PDT
17 小时 之前
11. Aug
已着陆
WN2551 SWA2551 PHX -> CMH Southwest Airlines
WN/SWA
11 Aug 17:42MST
18 小时 之前
12 Aug 00:00EDT
15 小时 之前
11. Aug
已着陆
WN4740 SWA4740 MKE -> ATL Southwest Airlines
WN/SWA
11 Aug 19:38CDT
18 小时 之前
11 Aug 22:07EDT
17 小时 之前
11. Aug
已着陆
WN3911 SWA3911 AUS -> TPA Southwest Airlines
WN/SWA
11 Aug 19:23CDT
19 小时 之前
11 Aug 22:25EDT
16 小时 之前

航空公司信息

Southwest Airlines WN4172 (SWA4172) SMF 到 SAN, RSW 到 PVD, MCO 到 MSY, BUR 到 OAK, LAS 到 PDX, PHX 到 RDU, MSY 到 BNA, BNA 到 MKE, PVD 到 BWI, BWI 到 SAT, MCO 到 MDW, DAL 到 IAH, BWI 到 ROC, MDW 到 DAL, SDF 到 BWI, IAH 到 MSY, ROC 到 MCO (2024)
Top Articles
Litter-Robot Troubleshooting: What Do The Lights Mean?
Litter-Robot 4 Automatische Zelfreinigende Kattenbak – Witte Bundel (EU)
What Did Bimbo Airhead Reply When Asked
Toyota Campers For Sale Craigslist
Jefferey Dahmer Autopsy Photos
La connexion à Mon Compte
Rek Funerals
How To Get Free Credits On Smartjailmail
Paula Deen Italian Cream Cake
Costco in Hawthorne (14501 Hindry Ave)
A Fashion Lover's Guide To Copenhagen
Remnant Graveyard Elf
Max 80 Orl
A.e.a.o.n.m.s
8 Ways to Make a Friend Feel Special on Valentine's Day
Koop hier ‘verloren pakketten’, een nieuwe Italiaanse zaak en dit wil je ook even weten - indebuurt Utrecht
The fabulous trio of the Miller sisters
What is Cyber Big Game Hunting? - CrowdStrike
The Banshees Of Inisherin Showtimes Near Regal Thornton Place
Craigslist Farm And Garden Tallahassee Florida
House Of Budz Michigan
10-Day Weather Forecast for Florence, AL - The Weather Channel | weather.com
Best Uf Sororities
Lazarillo De Tormes Summary and Study Guide | SuperSummary
Craigslist In Visalia California
Missouri Highway Patrol Crash
Long Island Jobs Craigslist
Tyler Sis University City
zom 100 mangadex - WebNovel
Winco Employee Handbook 2022
Defending The Broken Isles
Craigslist Apartments In Philly
Tokyo Spa Memphis Reviews
Rugged Gentleman Barber Shop Martinsburg Wv
Weather Underground Durham
Experity Installer
Bursar.okstate.edu
Rlcraft Toolbelt
The Latest: Trump addresses apparent assassination attempt on X
Http://N14.Ultipro.com
Frostbite Blaster
Gold Nugget at the Golden Nugget
Postgraduate | Student Recruitment
Ig Weekend Dow
Tgirls Philly
From Grindr to Scruff: The best dating apps for gay, bi, and queer men in 2024
Frequently Asked Questions
Congruent Triangles Coloring Activity Dinosaur Answer Key
Who Is Nina Yankovic? Daughter of Musician Weird Al Yankovic
7 Sites to Identify the Owner of a Phone Number
Asisn Massage Near Me
Obituaries in Westchester, NY | The Journal News
Latest Posts
Article information

Author: Delena Feil

Last Updated:

Views: 5788

Rating: 4.4 / 5 (65 voted)

Reviews: 80% of readers found this page helpful

Author information

Name: Delena Feil

Birthday: 1998-08-29

Address: 747 Lubowitz Run, Sidmouth, HI 90646-5543

Phone: +99513241752844

Job: Design Supervisor

Hobby: Digital arts, Lacemaking, Air sports, Running, Scouting, Shooting, Puzzles

Introduction: My name is Delena Feil, I am a clean, splendid, calm, fancy, jolly, bright, faithful person who loves writing and wants to share my knowledge and understanding with you.