720 lines
41 KiB
Python
720 lines
41 KiB
Python
# Part 3: Americas + Australia/Pacific ports
|
|
|
|
part3_ports = []
|
|
|
|
def p3(name, country, cc, unlocode, lat, lon, size="M"):
|
|
key = name.lower().replace(" ", "_").replace("-", "_").replace("'", "").replace(".", "")
|
|
return {"key": key, "name": name, "country": country, "country_code": cc,
|
|
"unlocode": unlocode, "lat": round(lat, 4), "lon": round(lon, 4),
|
|
"size": size}
|
|
|
|
# ============================================================
|
|
# 1. US EAST COAST + GULF (USEC) ~150 ports
|
|
# ============================================================
|
|
|
|
usec = [
|
|
# --- Major Container Ports ---
|
|
("New York", "United States", "US", "USNYC", 40.6892, -74.0445, "L"),
|
|
("Newark", "United States", "US", "USEWR", 40.6840, -74.1502, "L"),
|
|
("Savannah", "United States", "US", "USSAV", 32.0835, -81.0998, "L"),
|
|
("Norfolk", "United States", "US", "USORF", 36.8468, -76.2852, "L"),
|
|
("Charleston", "United States", "US", "USCHS", 32.7816, -79.9253, "L"),
|
|
("Miami", "United States", "US", "USMIA", 25.7743, -80.1703, "L"),
|
|
("Jacksonville", "United States", "US", "USJAX", 30.3322, -81.6557, "L"),
|
|
("Baltimore", "United States", "US", "USBAL", 39.2664, -76.5780, "L"),
|
|
("Philadelphia", "United States", "US", "USPHL", 39.8892, -75.1380, "L"),
|
|
("Wilmington NC", "United States", "US", "USILM", 34.2257, -77.9544, "M"),
|
|
("Boston", "United States", "US", "USBOS", 42.3541, -71.0478, "L"),
|
|
("Port Everglades", "United States", "US", "USPEF", 26.0934, -80.1168, "L"),
|
|
|
|
# --- Gulf Coast ---
|
|
("Houston", "United States", "US", "USHOU", 29.7260, -95.2690, "L"),
|
|
("New Orleans", "United States", "US", "USMSY", 29.9340, -90.0530, "L"),
|
|
("Mobile", "United States", "US", "USMOB", 30.6887, -88.0399, "M"),
|
|
("Gulfport", "United States", "US", "USGPT", 30.3616, -89.0928, "M"),
|
|
("Pascagoula", "United States", "US", "USPGL", 30.3477, -88.5561, "M"),
|
|
("Corpus Christi", "United States", "US", "USCRP", 27.8140, -97.3897, "L"),
|
|
("Brownsville", "United States", "US", "USBRO", 25.9545, -97.4005, "M"),
|
|
("Freeport TX", "United States", "US", "USFPT", 28.9483, -95.3597, "M"),
|
|
("Galveston", "United States", "US", "USGLS", 29.3013, -94.7977, "M"),
|
|
("Port Arthur", "United States", "US", "USPAT", 29.8671, -93.9287, "M"),
|
|
("Beaumont", "United States", "US", "USBPT", 30.0802, -94.1266, "M"),
|
|
("Lake Charles", "United States", "US", "USLCH", 30.2266, -93.2174, "M"),
|
|
("Baton Rouge", "United States", "US", "USBTR", 30.4418, -91.1871, "M"),
|
|
("Tampa", "United States", "US", "USTPA", 27.9422, -82.4526, "L"),
|
|
("Manatee", "United States", "US", "USMNZ", 27.5071, -82.5620, "M"),
|
|
("Palm Beach", "United States", "US", "USPBF", 26.7674, -80.0514, "M"),
|
|
("Fernandina Beach", "United States", "US", "USFEB", 30.6713, -81.4626, "S"),
|
|
("Brunswick GA", "United States", "US", "USBQK", 31.1496, -81.4915, "M"),
|
|
("Morehead City", "United States", "US", "USMHC", 34.7182, -76.7261, "S"),
|
|
("Port Canaveral", "United States", "US", "USPCV", 28.4082, -80.6101, "M"),
|
|
("Pensacola", "United States", "US", "USPNS", 30.4042, -87.2108, "M"),
|
|
("Panama City FL", "United States", "US", "USPFN", 30.1588, -85.6602, "S"),
|
|
("Key West", "United States", "US", "USEYW", 24.5551, -81.7800, "S"),
|
|
("Port Manatee", "United States", "US", "USMNT", 27.6350, -82.5630, "M"),
|
|
("Texas City", "United States", "US", "USTXC", 29.3838, -94.9027, "M"),
|
|
("Orange TX", "United States", "US", "USORN", 30.0930, -93.7366, "S"),
|
|
("Sabine Pass", "United States", "US", "USSAB", 29.7310, -93.8704, "S"),
|
|
("Plaquemines", "United States", "US", "USPLQ", 29.3550, -89.6570, "M"),
|
|
("Gramercy", "United States", "US", "USGMR", 30.0475, -90.6901, "S"),
|
|
("Reserve", "United States", "US", "USRSV", 30.0716, -90.5518, "S"),
|
|
|
|
# --- Smaller Atlantic ---
|
|
("Portland ME", "United States", "US", "USPWM", 43.6561, -70.2553, "M"),
|
|
("New Bedford", "United States", "US", "USNBD", 41.6362, -70.9342, "S"),
|
|
("Fall River", "United States", "US", "USFLR", 41.7015, -71.1550, "S"),
|
|
("Providence", "United States", "US", "USPVD", 41.8117, -71.4030, "M"),
|
|
("New London", "United States", "US", "USNLD", 41.3557, -72.0995, "S"),
|
|
("Bridgeport", "United States", "US", "USBDR", 41.1792, -73.1894, "S"),
|
|
("Albany", "United States", "US", "USALB", 42.6390, -73.7491, "M"),
|
|
("Marcus Hook", "United States", "US", "USMHK", 39.8193, -75.4105, "S"),
|
|
("Camden", "United States", "US", "USCDE", 39.9259, -75.1196, "S"),
|
|
("Chester", "United States", "US", "USCTR", 39.8496, -75.3557, "S"),
|
|
("Paulsboro", "United States", "US", "USPBO", 39.8279, -75.2407, "S"),
|
|
("Delaware City", "United States", "US", "USDLC", 39.5784, -75.5888, "S"),
|
|
("Cape May", "United States", "US", "USCMY", 38.9351, -74.9060, "S"),
|
|
("Atlantic City", "United States", "US", "USACY", 39.3643, -74.4229, "S"),
|
|
("New Haven", "United States", "US", "USHVN", 41.2832, -72.9081, "S"),
|
|
("Davisville", "United States", "US", "USDVL", 41.5859, -71.4107, "S"),
|
|
("Searsport", "United States", "US", "USSRP", 44.4628, -68.9209, "S"),
|
|
("Eastport", "United States", "US", "USEPM", 44.9062, -66.9856, "S"),
|
|
("Georgetown SC", "United States", "US", "USGGE", 33.3668, -79.2826, "S"),
|
|
("Port Royal SC", "United States", "US", "USPTL", 32.3780, -80.6923, "S"),
|
|
("Gloucester", "United States", "US", "USGLO", 42.6159, -70.6620, "S"),
|
|
("Portsmouth NH", "United States", "US", "USPMH", 43.0718, -70.7626, "S"),
|
|
|
|
# --- Great Lakes (treated as USEC) ---
|
|
("Chicago", "United States", "US", "USCHI", 41.8373, -87.6862, "L"),
|
|
("Detroit", "United States", "US", "USDET", 42.3223, -83.0880, "M"),
|
|
("Cleveland", "United States", "US", "USCLE", 41.4809, -81.7043, "M"),
|
|
("Toledo", "United States", "US", "USTOL", 41.6639, -83.5552, "M"),
|
|
("Buffalo", "United States", "US", "USBUF", 42.8774, -78.8801, "M"),
|
|
("Duluth", "United States", "US", "USDLH", 46.7756, -92.1005, "M"),
|
|
("Milwaukee", "United States", "US", "USMKE", 43.0279, -87.8996, "M"),
|
|
("Gary", "United States", "US", "USGRY", 41.6103, -87.3474, "S"),
|
|
("Indiana Harbor", "United States", "US", "USINH", 41.6557, -87.4406, "S"),
|
|
("Ashtabula", "United States", "US", "USASH", 41.9122, -80.7898, "S"),
|
|
("Conneaut", "United States", "US", "USCNT", 41.9614, -80.5534, "S"),
|
|
("Erie", "United States", "US", "USERI", 42.1320, -80.0852, "S"),
|
|
("Lorain", "United States", "US", "USLOR", 41.4674, -82.1788, "S"),
|
|
("Huron OH", "United States", "US", "USHUR", 41.3948, -82.5551, "S"),
|
|
("Sandusky", "United States", "US", "USSKY", 41.4490, -82.7078, "S"),
|
|
("Port Huron", "United States", "US", "USPHN", 42.9709, -82.4249, "S"),
|
|
("Sault Ste Marie", "United States", "US", "USSSM", 46.4953, -84.3453, "S"),
|
|
("Green Bay", "United States", "US", "USGRB", 44.5263, -88.0133, "S"),
|
|
("Marinette", "United States", "US", "USMRN", 45.0997, -87.6306, "S"),
|
|
("Escanaba", "United States", "US", "USESC", 45.7472, -87.0646, "S"),
|
|
("Marquette", "United States", "US", "USMQT", 46.5475, -87.3954, "S"),
|
|
("Alpena", "United States", "US", "USAPN", 45.0617, -83.4327, "S"),
|
|
("Oswego", "United States", "US", "USUSW", 43.4636, -76.5105, "S"),
|
|
("Ogdensburg", "United States", "US", "USOGS", 44.6945, -75.4863, "S"),
|
|
("Burns Harbor", "United States", "US", "USBNH", 41.6270, -87.1506, "S"),
|
|
("Muskegon", "United States", "US", "USMKG", 43.2342, -86.2562, "S"),
|
|
("Calcite", "United States", "US", "USCLT", 45.3791, -83.7648, "S"),
|
|
("Presque Isle", "United States", "US", "USQIE", 46.5675, -87.3807, "S"),
|
|
("Two Harbors", "United States", "US", "USTWH", 47.0161, -91.6735, "S"),
|
|
("Silver Bay", "United States", "US", "USSVB", 47.2936, -91.2507, "S"),
|
|
("Taconite Harbor", "United States", "US", "USTCH", 47.3361, -91.1340, "S"),
|
|
("Superior", "United States", "US", "USSUP", 46.7208, -92.0891, "M"),
|
|
|
|
# --- Canada East (~30) ---
|
|
("Montreal", "Canada", "CA", "CAMTR", 45.5048, -73.5538, "L"),
|
|
("Halifax", "Canada", "CA", "CAHAL", 44.6476, -63.5728, "L"),
|
|
("Saint John NB", "Canada", "CA", "CASJB", 45.2644, -66.0635, "M"),
|
|
("Quebec City", "Canada", "CA", "CAQUE", 46.8158, -71.2080, "M"),
|
|
("Sept-Iles", "Canada", "CA", "CASEI", 50.2100, -66.3817, "M"),
|
|
("Port Cartier", "Canada", "CA", "CAPCA", 50.0334, -66.8654, "M"),
|
|
("Baie-Comeau", "Canada", "CA", "CABCO", 49.2224, -68.1539, "M"),
|
|
("Corner Brook", "Canada", "CA", "CACBK", 48.9566, -57.9489, "S"),
|
|
("St Johns NL", "Canada", "CA", "CASJF", 47.5675, -52.7073, "M"),
|
|
("Sydney NS", "Canada", "CA", "CASYD", 46.1367, -60.1942, "S"),
|
|
("Trois-Rivieres", "Canada", "CA", "CATRR", 46.3452, -72.5472, "M"),
|
|
("Sorel", "Canada", "CA", "CASOR", 46.0413, -73.1166, "S"),
|
|
("Becancour", "Canada", "CA", "CABEC", 46.3484, -72.4318, "S"),
|
|
("Dalhousie", "Canada", "CA", "CADAL", 48.0684, -66.3700, "S"),
|
|
("Belledune", "Canada", "CA", "CABEL", 47.9109, -65.8290, "S"),
|
|
("Miramichi", "Canada", "CA", "CAMIR", 47.0077, -65.4738, "S"),
|
|
("Summerside", "Canada", "CA", "CASUS", 46.3935, -63.7833, "S"),
|
|
("Charlottetown", "Canada", "CA", "CACHA", 46.2382, -63.1311, "S"),
|
|
("Thunder Bay", "Canada", "CA", "CATHB", 48.3809, -89.2477, "M"),
|
|
("Hamilton ON", "Canada", "CA", "CAHAM", 43.2840, -79.8441, "M"),
|
|
("Toronto", "Canada", "CA", "CATOR", 43.6372, -79.3868, "L"),
|
|
("Windsor", "Canada", "CA", "CAWNR", 42.3149, -83.0364, "M"),
|
|
("Sarnia", "Canada", "CA", "CASAR", 42.9745, -82.4066, "S"),
|
|
("Nanticoke", "Canada", "CA", "CANAN", 42.7920, -80.0592, "S"),
|
|
("Clarkson", "Canada", "CA", "CACLK", 43.5140, -79.6256, "S"),
|
|
("Goderich", "Canada", "CA", "CAGOD", 43.7484, -81.7268, "S"),
|
|
("Port Colborne", "Canada", "CA", "CAPCL", 42.8863, -79.2520, "S"),
|
|
("Johnstown", "Canada", "CA", "CAJHN", 44.7477, -75.4856, "S"),
|
|
]
|
|
for t in usec:
|
|
part3_ports.append({**p3(*t), "region": "USEC"})
|
|
|
|
|
|
# ============================================================
|
|
# 2. US WEST COAST (USWC) ~80 ports
|
|
# ============================================================
|
|
|
|
uswc = [
|
|
# --- California ---
|
|
("Los Angeles", "United States", "US", "USLAX", 33.7361, -118.2642, "L"),
|
|
("Long Beach", "United States", "US", "USLGB", 33.7539, -118.1937, "L"),
|
|
("Oakland", "United States", "US", "USOAK", 37.7956, -122.2789, "L"),
|
|
("San Francisco", "United States", "US", "USSFO", 37.7906, -122.3957, "L"),
|
|
("San Diego", "United States", "US", "USSAN", 32.6871, -117.1628, "M"),
|
|
("Stockton", "United States", "US", "USSTS", 37.9464, -121.3338, "M"),
|
|
("Sacramento", "United States", "US", "USSAC", 38.5711, -121.5069, "M"),
|
|
("Hueneme", "United States", "US", "USHUE", 34.1460, -119.2105, "M"),
|
|
("Redwood City", "United States", "US", "USRWC", 37.5072, -122.2116, "S"),
|
|
("Richmond", "United States", "US", "USRIC", 37.9104, -122.3571, "M"),
|
|
("Benicia", "United States", "US", "USBNC", 38.0493, -122.1577, "S"),
|
|
("Martinez", "United States", "US", "USMRZ", 38.0194, -122.1341, "S"),
|
|
("Antioch", "United States", "US", "USATC", 38.0049, -121.8058, "S"),
|
|
("El Segundo", "United States", "US", "USELS", 33.9192, -118.4165, "S"),
|
|
("Selby", "United States", "US", "USSLB", 38.0590, -122.2180, "S"),
|
|
|
|
# --- Pacific Northwest ---
|
|
("Seattle", "United States", "US", "USSEA", 47.5801, -122.3465, "L"),
|
|
("Tacoma", "United States", "US", "USTCM", 47.2684, -122.4137, "L"),
|
|
("Portland OR", "United States", "US", "USPDX", 45.5944, -122.7595, "L"),
|
|
("Longview", "United States", "US", "USLGV", 46.1052, -122.9553, "M"),
|
|
("Kalama", "United States", "US", "USKLM", 46.0122, -122.8474, "S"),
|
|
("Vancouver WA", "United States", "US", "USVUW", 45.6280, -122.6750, "M"),
|
|
("Olympia", "United States", "US", "USOLM", 47.0495, -122.9022, "S"),
|
|
("Everett", "United States", "US", "USEVT", 47.9790, -122.2237, "M"),
|
|
("Anacortes", "United States", "US", "USANC", 48.5126, -122.6127, "S"),
|
|
("Bellingham", "United States", "US", "USBLH", 48.7519, -122.4787, "S"),
|
|
("Grays Harbor", "United States", "US", "USGHB", 46.9536, -124.0917, "S"),
|
|
("Coos Bay", "United States", "US", "USCOO", 43.3659, -124.2173, "S"),
|
|
("Astoria", "United States", "US", "USAST", 46.1879, -123.8313, "S"),
|
|
|
|
# --- Alaska (~15) ---
|
|
("Anchorage", "United States", "US", "USANR", 61.2381, -149.8805, "M"),
|
|
("Valdez", "United States", "US", "USVDZ", 61.1250, -146.3541, "M"),
|
|
("Juneau", "United States", "US", "USJNU", 58.3005, -134.4197, "M"),
|
|
("Kodiak", "United States", "US", "USADQ", 57.7900, -152.4072, "S"),
|
|
("Dutch Harbor", "United States", "US", "USDUT", 53.8914, -166.5423, "M"),
|
|
("Seward", "United States", "US", "USSWD", 60.1042, -149.4370, "S"),
|
|
("Ketchikan", "United States", "US", "USKTN", 55.3422, -131.6461, "S"),
|
|
("Sitka", "United States", "US", "USSIT", 57.0531, -135.3346, "S"),
|
|
("Nome", "United States", "US", "USOME", 64.5011, -165.4064, "S"),
|
|
("Cordova", "United States", "US", "USCDV", 60.5433, -145.7575, "S"),
|
|
("Petersburg", "United States", "US", "USPSG", 56.8125, -132.9553, "S"),
|
|
("Wrangell", "United States", "US", "USWRG", 56.4714, -132.3767, "S"),
|
|
("Skagway", "United States", "US", "USSGW", 59.4494, -135.3145, "S"),
|
|
("Homer", "United States", "US", "USHOM", 59.6425, -151.5483, "S"),
|
|
("Whittier", "United States", "US", "USWHI", 60.7733, -148.6836, "S"),
|
|
|
|
# --- Hawaii (~5) ---
|
|
("Honolulu", "United States", "US", "USHNL", 21.3069, -157.8583, "L"),
|
|
("Hilo", "United States", "US", "USITO", 19.7300, -155.0550, "S"),
|
|
("Kahului", "United States", "US", "USOGG", 20.8953, -156.4764, "S"),
|
|
("Nawiliwili", "United States", "US", "USNWL", 21.9544, -159.3564, "S"),
|
|
("Barbers Point", "United States", "US", "USBPT", 21.3214, -158.1234, "S"),
|
|
|
|
# --- Canada West (~15) ---
|
|
("Vancouver BC", "Canada", "CA", "CAVAN", 49.2900, -123.1112, "L"),
|
|
("Prince Rupert", "Canada", "CA", "CAPRR", 54.3150, -130.3208, "M"),
|
|
("Victoria", "Canada", "CA", "CAVIC", 48.4284, -123.3656, "M"),
|
|
("Nanaimo", "Canada", "CA", "CANAI", 49.1666, -123.9401, "S"),
|
|
("New Westminster", "Canada", "CA", "CANWT", 49.2068, -122.9110, "M"),
|
|
("Delta Roberts Bank", "Canada", "CA", "CADRB", 49.0135, -123.2478, "L"),
|
|
("Stewart", "Canada", "CA", "CASTW", 55.9381, -129.9903, "S"),
|
|
("Kitimat", "Canada", "CA", "CAKIT", 54.0523, -128.6570, "M"),
|
|
("Port Alberni", "Canada", "CA", "CAPAB", 49.2338, -124.8055, "S"),
|
|
("Campbell River", "Canada", "CA", "CACBR", 50.0244, -125.2475, "S"),
|
|
("Powell River", "Canada", "CA", "CAPOW", 49.8353, -124.5247, "S"),
|
|
("Squamish", "Canada", "CA", "CASQU", 49.7016, -123.1558, "S"),
|
|
("Chemainus", "Canada", "CA", "CACHE", 48.9260, -123.7130, "S"),
|
|
("Fraser Surrey", "Canada", "CA", "CAFSR", 49.1148, -122.9239, "M"),
|
|
]
|
|
for t in uswc:
|
|
part3_ports.append({**p3(*t), "region": "USWC"})
|
|
|
|
|
|
# ============================================================
|
|
# 3. CARIBBEAN (CARIB) ~150 ports
|
|
# ============================================================
|
|
|
|
carib = [
|
|
# --- Mexico (~20) ---
|
|
("Veracruz", "Mexico", "MX", "MXVER", 19.2000, -96.1333, "L"),
|
|
("Altamira", "Mexico", "MX", "MXATM", 22.4167, -97.9000, "L"),
|
|
("Tampico", "Mexico", "MX", "MXTAM", 22.2167, -97.8500, "M"),
|
|
("Progreso", "Mexico", "MX", "MXPRO", 21.2833, -89.6667, "M"),
|
|
("Coatzacoalcos", "Mexico", "MX", "MXCOA", 18.1500, -94.4167, "M"),
|
|
("Dos Bocas", "Mexico", "MX", "MXDOB", 18.4333, -93.2167, "M"),
|
|
("Lazaro Cardenas", "Mexico", "MX", "MXLZC", 17.9333, -102.1833, "L"),
|
|
("Manzanillo", "Mexico", "MX", "MXZLO", 19.0544, -104.3178, "L"),
|
|
("Ensenada", "Mexico", "MX", "MXESE", 31.8583, -116.6250, "M"),
|
|
("Mazatlan", "Mexico", "MX", "MXMZT", 23.1894, -106.4253, "M"),
|
|
("Guaymas", "Mexico", "MX", "MXGYM", 27.9217, -110.8989, "M"),
|
|
("Topolobampo", "Mexico", "MX", "MXTPB", 25.6003, -109.0528, "M"),
|
|
("La Paz", "Mexico", "MX", "MXLPZ", 24.1600, -110.3089, "S"),
|
|
("Cabo San Lucas", "Mexico", "MX", "MXCSL", 22.8905, -109.9122, "S"),
|
|
("Puerto Vallarta", "Mexico", "MX", "MXPVR", 20.6534, -105.2253, "M"),
|
|
("Acapulco", "Mexico", "MX", "MXACA", 16.8531, -99.8906, "M"),
|
|
("Salina Cruz", "Mexico", "MX", "MXSCX", 16.1647, -95.1967, "M"),
|
|
("Puerto Chiapas", "Mexico", "MX", "MXPCH", 14.7189, -92.4156, "S"),
|
|
("Ciudad del Carmen", "Mexico", "MX", "MXCME", 18.6333, -91.8333, "M"),
|
|
("Cozumel", "Mexico", "MX", "MXCZM", 20.5081, -86.9461, "S"),
|
|
|
|
# --- Panama (~10) ---
|
|
("Colon", "Panama", "PA", "PACON", 9.3547, -79.9008, "L"),
|
|
("Balboa", "Panama", "PA", "PABLB", 8.9536, -79.5669, "L"),
|
|
("Manzanillo Intl Panama", "Panama", "PA", "PAMIT", 9.3486, -79.8784, "L"),
|
|
("Cristobal", "Panama", "PA", "PACTB", 9.3581, -79.9083, "M"),
|
|
("Puerto Armuelles", "Panama", "PA", "PAPAM", 8.2758, -82.8631, "S"),
|
|
("Charco Azul", "Panama", "PA", "PACZA", 8.2764, -82.8569, "S"),
|
|
("Bocas del Toro", "Panama", "PA", "PABDT", 9.3403, -82.2419, "S"),
|
|
|
|
# --- Cuba (~8) ---
|
|
("Havana", "Cuba", "CU", "CUHAV", 23.1200, -82.3472, "L"),
|
|
("Santiago de Cuba", "Cuba", "CU", "CUSCU", 20.0128, -75.8178, "M"),
|
|
("Cienfuegos", "Cuba", "CU", "CUCFG", 22.1400, -80.4500, "M"),
|
|
("Mariel", "Cuba", "CU", "CUMAR", 22.9886, -82.7544, "M"),
|
|
("Matanzas", "Cuba", "CU", "CUMTZ", 23.0589, -81.5744, "M"),
|
|
("Nuevitas", "Cuba", "CU", "CUNVT", 21.5500, -77.2667, "S"),
|
|
|
|
# --- Jamaica (~5) ---
|
|
("Kingston", "Jamaica", "JM", "JMKIN", 17.9714, -76.7942, "L"),
|
|
("Montego Bay", "Jamaica", "JM", "JMMBJ", 18.4534, -77.9186, "M"),
|
|
("Port Antonio", "Jamaica", "JM", "JMPAN", 18.1792, -76.4503, "S"),
|
|
|
|
# --- Dominican Republic (~5) ---
|
|
("Santo Domingo", "Dominican Republic", "DO", "DOSDO", 18.4719, -69.8828, "M"),
|
|
("Puerto Plata", "Dominican Republic", "DO", "DOPOP", 19.7969, -70.6906, "S"),
|
|
("Rio Haina", "Dominican Republic", "DO", "DOHAI", 18.4292, -70.0131, "M"),
|
|
("Boca Chica", "Dominican Republic", "DO", "DOBCH", 18.4486, -69.6069, "M"),
|
|
("San Pedro de Macoris", "Dominican Republic", "DO", "DOSPM", 18.4492, -69.3069, "S"),
|
|
("Caucedo", "Dominican Republic", "DO", "DOCAU", 18.4300, -69.6200, "M"),
|
|
|
|
# --- Puerto Rico (~5) ---
|
|
("San Juan", "Puerto Rico", "PR", "PRSJU", 18.4600, -66.0900, "L"),
|
|
("Ponce", "Puerto Rico", "PR", "PRPCE", 17.9744, -66.6142, "M"),
|
|
("Mayaguez", "Puerto Rico", "PR", "PRMAZ", 18.2017, -67.1597, "S"),
|
|
("Guayanilla", "Puerto Rico", "PR", "PRGUY", 17.9750, -66.7594, "S"),
|
|
|
|
# --- Trinidad & Tobago (~5) ---
|
|
("Port of Spain", "Trinidad and Tobago", "TT", "TTPOS", 10.6500, -61.5167, "M"),
|
|
("Point Lisas", "Trinidad and Tobago", "TT", "TTPLS", 10.4125, -61.4697, "M"),
|
|
("Point Fortin", "Trinidad and Tobago", "TT", "TTPFT", 10.1833, -61.6833, "S"),
|
|
("Scarborough", "Trinidad and Tobago", "TT", "TTSCR", 11.1833, -60.7333, "S"),
|
|
("Pointe-a-Pierre", "Trinidad and Tobago", "TT", "TTPAP", 10.3200, -61.4700, "S"),
|
|
|
|
# --- Bahamas (~5) ---
|
|
("Nassau", "Bahamas", "BS", "BSNAS", 25.0800, -77.3431, "M"),
|
|
("Freeport Bahamas", "Bahamas", "BS", "BSFPO", 26.5333, -78.7500, "L"),
|
|
("South Riding Point", "Bahamas", "BS", "BSSRP", 26.6300, -78.2300, "S"),
|
|
|
|
# --- Haiti (~3) ---
|
|
("Port-au-Prince", "Haiti", "HT", "HTPAP", 18.5392, -72.3531, "M"),
|
|
("Cap-Haitien", "Haiti", "HT", "HTCAP", 19.7600, -72.2000, "S"),
|
|
("Gonaives", "Haiti", "HT", "HTGON", 19.4500, -72.6833, "S"),
|
|
|
|
# --- Barbados (~2) ---
|
|
("Bridgetown", "Barbados", "BB", "BBBGI", 13.0969, -59.6142, "M"),
|
|
|
|
# --- Guadeloupe (~2) ---
|
|
("Pointe-a-Pitre", "Guadeloupe", "GP", "GPPTP", 16.2381, -61.5319, "M"),
|
|
("Basse-Terre", "Guadeloupe", "GP", "GPBST", 16.0000, -61.7333, "S"),
|
|
|
|
# --- Martinique (~2) ---
|
|
("Fort-de-France", "Martinique", "MQ", "MQFDF", 14.6042, -61.0667, "M"),
|
|
|
|
# --- US Virgin Islands (~2) ---
|
|
("Charlotte Amalie", "US Virgin Islands", "VI", "VISTT", 18.3358, -64.9308, "M"),
|
|
("Limetree Bay", "US Virgin Islands", "VI", "VILBY", 17.7000, -64.7500, "S"),
|
|
|
|
# --- Aruba (~2) ---
|
|
("Oranjestad", "Aruba", "AW", "AWORA", 12.5186, -70.0358, "M"),
|
|
("San Nicolas", "Aruba", "AW", "AWSNL", 12.4333, -69.9333, "S"),
|
|
|
|
# --- Curacao (~2) ---
|
|
("Willemstad", "Curacao", "CW", "CWWIL", 12.1167, -68.9333, "M"),
|
|
("Bullenbaai", "Curacao", "CW", "CWBUL", 12.1800, -69.0100, "S"),
|
|
|
|
# --- Costa Rica (~4) ---
|
|
("Puerto Limon", "Costa Rica", "CR", "CRLIO", 9.9833, -83.0333, "M"),
|
|
("Caldera", "Costa Rica", "CR", "CRCAL", 9.9167, -84.7167, "M"),
|
|
("Moin", "Costa Rica", "CR", "CRMOI", 10.0000, -83.0833, "M"),
|
|
("Puntarenas", "Costa Rica", "CR", "CRPAS", 9.9764, -84.8383, "S"),
|
|
|
|
# --- Honduras (~5) ---
|
|
("Puerto Cortes", "Honduras", "HN", "HNPCO", 15.8333, -87.9500, "M"),
|
|
("San Lorenzo", "Honduras", "HN", "HNSLO", 13.4333, -87.4333, "S"),
|
|
("La Ceiba", "Honduras", "HN", "HNLCE", 15.7833, -86.8000, "S"),
|
|
("Roatan", "Honduras", "HN", "HNRTN", 16.3192, -86.5233, "S"),
|
|
("Tela", "Honduras", "HN", "HNTEL", 15.7833, -87.4500, "S"),
|
|
|
|
# --- Guatemala (~3) ---
|
|
("Puerto Quetzal", "Guatemala", "GT", "GTPRQ", 13.9236, -90.7878, "M"),
|
|
("Santo Tomas de Castilla", "Guatemala", "GT", "GTSTC", 15.7000, -88.6167, "M"),
|
|
("Puerto Barrios", "Guatemala", "GT", "GTPBR", 15.7333, -88.5833, "M"),
|
|
|
|
# --- Belize (~2) ---
|
|
("Belize City", "Belize", "BZ", "BZBZE", 17.4944, -88.1850, "S"),
|
|
("Big Creek", "Belize", "BZ", "BZBGK", 16.5167, -88.4000, "S"),
|
|
|
|
# --- Nicaragua (~2) ---
|
|
("Corinto", "Nicaragua", "NI", "NICIO", 12.4833, -87.1833, "M"),
|
|
("Bluefields", "Nicaragua", "NI", "NIBEF", 12.0117, -83.7600, "S"),
|
|
|
|
# --- El Salvador (~2) ---
|
|
("Acajutla", "El Salvador", "SV", "SVAQJ", 13.5833, -89.8333, "M"),
|
|
("La Union", "El Salvador", "SV", "SVLUN", 13.3333, -87.8333, "S"),
|
|
|
|
# --- Suriname (~2) ---
|
|
("Paramaribo", "Suriname", "SR", "SRPBM", 5.8167, -55.1667, "M"),
|
|
("Nieuw Nickerie", "Suriname", "SR", "SRNIC", 5.9333, -56.9833, "S"),
|
|
|
|
# --- Guyana (~3) ---
|
|
("Georgetown", "Guyana", "GY", "GYGEO", 6.8000, -58.1667, "M"),
|
|
("Linden", "Guyana", "GY", "GYLIN", 6.0000, -58.3000, "S"),
|
|
("New Amsterdam", "Guyana", "GY", "GYNAM", 6.2500, -57.5167, "S"),
|
|
|
|
# --- French Guiana (~2) ---
|
|
("Cayenne", "French Guiana", "GF", "GFCAY", 4.9333, -52.3333, "M"),
|
|
("Degrad des Cannes", "French Guiana", "GF", "GFDDC", 4.8500, -52.2667, "S"),
|
|
|
|
# --- Other Caribbean Islands ---
|
|
("Castries", "Saint Lucia", "LC", "LCCAS", 14.0167, -61.0000, "S"),
|
|
("Kingstown", "Saint Vincent", "VC", "VCKTN", 13.1500, -61.2167, "S"),
|
|
("St Georges", "Grenada", "GD", "GDSTG", 12.0522, -61.7500, "S"),
|
|
("Basseterre", "Saint Kitts", "KN", "KNBAS", 17.2950, -62.7228, "S"),
|
|
("Roseau", "Dominica", "DM", "DMRSU", 15.3000, -61.3833, "S"),
|
|
("Road Town", "British Virgin Islands", "VG", "VGRTW", 18.4275, -64.6167, "S"),
|
|
("Philipsburg", "Sint Maarten", "SX", "SXPHI", 18.0237, -63.0458, "S"),
|
|
("Kralendijk", "Bonaire", "BQ", "BQKRA", 12.1500, -68.2667, "S"),
|
|
("Antigua", "Antigua and Barbuda", "AG", "AGSTJ", 17.1175, -61.8456, "S"),
|
|
("Hamilton", "Bermuda", "BM", "BMHAM", 32.2833, -64.7833, "S"),
|
|
("George Town", "Cayman Islands", "KY", "KYGET", 19.2950, -81.3817, "S"),
|
|
("Cockburn Harbour", "Turks and Caicos", "TC", "TCCBH", 21.5000, -71.5167, "S"),
|
|
]
|
|
for t in carib:
|
|
part3_ports.append({**p3(*t), "region": "CARIB"})
|
|
|
|
|
|
# ============================================================
|
|
# 4. SOUTH AMERICA EAST (SAE) ~100 ports
|
|
# ============================================================
|
|
|
|
sae = [
|
|
# --- Brazil (~70) ---
|
|
("Santos", "Brazil", "BR", "BRSSZ", -23.9608, -46.3044, "L"),
|
|
("Paranagua", "Brazil", "BR", "BRPNG", -25.5161, -48.5228, "L"),
|
|
("Rio Grande", "Brazil", "BR", "BRRIG", -32.0558, -52.0986, "M"),
|
|
("Itajai", "Brazil", "BR", "BRITJ", -26.9075, -48.6656, "M"),
|
|
("Navegantes", "Brazil", "BR", "BRNVT", -26.8833, -48.6547, "M"),
|
|
("Sao Francisco do Sul", "Brazil", "BR", "BRSFS", -26.2422, -48.6361, "M"),
|
|
("Imbituba", "Brazil", "BR", "BRIBB", -28.2342, -48.6550, "M"),
|
|
("Rio de Janeiro", "Brazil", "BR", "BRRIO", -22.8833, -43.1667, "L"),
|
|
("Vitoria", "Brazil", "BR", "BRVIX", -20.3167, -40.2833, "M"),
|
|
("Tubarao", "Brazil", "BR", "BRTUB", -20.2833, -40.2333, "L"),
|
|
("Salvador", "Brazil", "BR", "BRSSA", -12.9708, -38.5131, "M"),
|
|
("Suape", "Brazil", "BR", "BRSUA", -8.3833, -35.0000, "M"),
|
|
("Recife", "Brazil", "BR", "BRREC", -8.0500, -34.8667, "M"),
|
|
("Pecem", "Brazil", "BR", "BRPEC", -3.5333, -38.8000, "M"),
|
|
("Fortaleza", "Brazil", "BR", "BRFOR", -3.7167, -38.5167, "M"),
|
|
("Manaus", "Brazil", "BR", "BRMAO", -3.1333, -60.0167, "M"),
|
|
("Belem", "Brazil", "BR", "BRBEL", -1.4333, -48.5000, "M"),
|
|
("Santarem", "Brazil", "BR", "BRSTM", -2.4333, -54.7000, "S"),
|
|
("Macapa", "Brazil", "BR", "BRMCP", 0.0333, -51.0500, "S"),
|
|
("Vila do Conde", "Brazil", "BR", "BRVDC", -1.5500, -48.7500, "M"),
|
|
("Itaqui", "Brazil", "BR", "BRITQ", -2.5667, -44.3667, "M"),
|
|
("Sao Luis", "Brazil", "BR", "BRSLZ", -2.5000, -44.2833, "M"),
|
|
("Aratu", "Brazil", "BR", "BRART", -12.7833, -38.4833, "M"),
|
|
("Ilheus", "Brazil", "BR", "BRIOS", -14.7833, -39.0333, "S"),
|
|
("Cabedelo", "Brazil", "BR", "BRCAB", -6.9667, -34.8333, "S"),
|
|
("Natal", "Brazil", "BR", "BRNAT", -5.7667, -35.2000, "S"),
|
|
("Maceio", "Brazil", "BR", "BRMCZ", -9.6667, -35.7167, "S"),
|
|
("Aracaju", "Brazil", "BR", "BRAJU", -10.9167, -37.0500, "S"),
|
|
("Angra dos Reis", "Brazil", "BR", "BRADR", -22.9667, -44.3167, "M"),
|
|
("Sepetiba", "Brazil", "BR", "BRSTB", -22.9333, -43.7167, "L"),
|
|
("Itaguai", "Brazil", "BR", "BRITG", -22.9000, -43.7833, "L"),
|
|
("Antonina", "Brazil", "BR", "BRANT", -25.4333, -48.7167, "S"),
|
|
("Porto Alegre", "Brazil", "BR", "BRPOA", -30.0331, -51.2300, "M"),
|
|
("Pelotas", "Brazil", "BR", "BRPET", -31.7667, -52.3333, "S"),
|
|
("Itacoatiara", "Brazil", "BR", "BRITC", -3.1333, -58.4500, "S"),
|
|
("Praia Mole", "Brazil", "BR", "BRPMO", -20.2833, -40.2167, "M"),
|
|
("Ponta da Madeira", "Brazil", "BR", "BRPDM", -2.5667, -44.3833, "L"),
|
|
("Trombetas", "Brazil", "BR", "BRTBT", -1.5000, -56.3833, "S"),
|
|
("Sao Sebastiao", "Brazil", "BR", "BRSES", -23.8000, -45.4000, "M"),
|
|
("Portocel", "Brazil", "BR", "BRPCL", -19.9833, -40.0500, "M"),
|
|
("Regencia", "Brazil", "BR", "BRREG", -19.6500, -39.8333, "S"),
|
|
("Presidente Epitacio", "Brazil", "BR", "BRPEP", -21.7667, -52.1000, "S"),
|
|
("Guamare", "Brazil", "BR", "BRGMR", -5.1000, -36.3833, "S"),
|
|
("Madre de Deus", "Brazil", "BR", "BRMDZ", -12.7500, -38.6167, "S"),
|
|
("Forno", "Brazil", "BR", "BRFRN", -22.7667, -41.8667, "S"),
|
|
("Santana", "Brazil", "BR", "BRSNT", 0.0500, -51.1833, "S"),
|
|
("Niteroi", "Brazil", "BR", "BRNTE", -22.8833, -43.1000, "S"),
|
|
("Tramandai", "Brazil", "BR", "BRTMD", -30.0167, -50.1333, "S"),
|
|
("Charqueadas", "Brazil", "BR", "BRCHQ", -29.9500, -51.6167, "S"),
|
|
("Laguna", "Brazil", "BR", "BRLAG", -28.4833, -48.7833, "S"),
|
|
("Uruguaiana", "Brazil", "BR", "BRURU", -29.7500, -57.0833, "S"),
|
|
|
|
# --- Argentina (~20) ---
|
|
("Buenos Aires", "Argentina", "AR", "ARBUE", -34.5997, -58.3819, "L"),
|
|
("Rosario", "Argentina", "AR", "ARROS", -32.9568, -60.6393, "L"),
|
|
("Bahia Blanca", "Argentina", "AR", "ARBHI", -38.7333, -62.2833, "M"),
|
|
("La Plata", "Argentina", "AR", "ARLPG", -34.8667, -57.8833, "M"),
|
|
("Campana", "Argentina", "AR", "ARCMP", -34.1667, -58.9667, "M"),
|
|
("Zarate", "Argentina", "AR", "ARZAR", -34.0833, -59.0333, "M"),
|
|
("San Lorenzo", "Argentina", "AR", "ARSLO", -32.7500, -60.7333, "M"),
|
|
("San Martin", "Argentina", "AR", "ARSMT", -32.7167, -60.7167, "M"),
|
|
("Necochea", "Argentina", "AR", "ARNEC", -38.5500, -58.7333, "M"),
|
|
("Quequen", "Argentina", "AR", "ARQQN", -38.5667, -58.7000, "M"),
|
|
("Mar del Plata", "Argentina", "AR", "ARMDQ", -38.0333, -57.5500, "M"),
|
|
("Puerto Madryn", "Argentina", "AR", "ARPMN", -42.7500, -65.0500, "M"),
|
|
("Comodoro Rivadavia", "Argentina", "AR", "ARCRD", -45.8667, -67.4833, "S"),
|
|
("Puerto Deseado", "Argentina", "AR", "ARPDE", -47.7500, -65.9000, "S"),
|
|
("Rio Gallegos", "Argentina", "AR", "ARRGA", -51.6167, -69.2167, "S"),
|
|
("Ushuaia", "Argentina", "AR", "ARUSH", -54.8019, -68.3030, "S"),
|
|
("Dock Sud", "Argentina", "AR", "ARDKS", -34.6333, -58.3500, "M"),
|
|
("Ramallo", "Argentina", "AR", "ARRAM", -33.4833, -60.0167, "S"),
|
|
("Villa Constitucion", "Argentina", "AR", "ARVCO", -33.2333, -60.3333, "S"),
|
|
("Diamante", "Argentina", "AR", "ARDIA", -32.0667, -60.6500, "S"),
|
|
("San Nicolas", "Argentina", "AR", "ARSNI", -33.3333, -60.2167, "S"),
|
|
|
|
# --- Uruguay (~8) ---
|
|
("Montevideo", "Uruguay", "UY", "UYMVD", -34.9033, -56.2122, "L"),
|
|
("Nueva Palmira", "Uruguay", "UY", "UYNPA", -33.8833, -58.4000, "M"),
|
|
("Fray Bentos", "Uruguay", "UY", "UYFBR", -33.1167, -58.3000, "S"),
|
|
("Colonia", "Uruguay", "UY", "UYCOL", -34.4667, -57.8500, "S"),
|
|
("Punta del Este", "Uruguay", "UY", "UYPDE", -34.9667, -54.9500, "S"),
|
|
("La Paloma", "Uruguay", "UY", "UYLPA", -34.6500, -54.1500, "S"),
|
|
("Juan Lacaze", "Uruguay", "UY", "UYJLZ", -34.4333, -57.4500, "S"),
|
|
("Jose Ignacio", "Uruguay", "UY", "UYIGN", -34.7833, -54.6333, "S"),
|
|
|
|
# --- Falkland Islands (~2) ---
|
|
("Stanley", "Falkland Islands", "FK", "FKSTN", -51.7000, -57.8500, "S"),
|
|
("Goose Green", "Falkland Islands", "FK", "FKGGN", -51.8167, -59.0000, "S"),
|
|
]
|
|
for t in sae:
|
|
part3_ports.append({**p3(*t), "region": "SAE"})
|
|
|
|
|
|
# ============================================================
|
|
# 5. SOUTH AMERICA WEST (SAW) ~60 ports
|
|
# ============================================================
|
|
|
|
saw = [
|
|
# --- Chile (~30) ---
|
|
("San Antonio", "Chile", "CL", "CLSAI", -33.5917, -71.6167, "L"),
|
|
("Valparaiso", "Chile", "CL", "CLVAP", -33.0472, -71.6267, "L"),
|
|
("Talcahuano", "Chile", "CL", "CLTAL", -36.7167, -73.1167, "M"),
|
|
("San Vicente", "Chile", "CL", "CLSVE", -36.7333, -73.1333, "M"),
|
|
("Coronel", "Chile", "CL", "CLCNL", -37.0333, -73.1500, "M"),
|
|
("Antofagasta", "Chile", "CL", "CLANT", -23.6333, -70.4000, "M"),
|
|
("Arica", "Chile", "CL", "CLARI", -18.4833, -70.3167, "M"),
|
|
("Iquique", "Chile", "CL", "CLIQQ", -20.2000, -70.1333, "M"),
|
|
("Coquimbo", "Chile", "CL", "CLCQQ", -29.9500, -71.3500, "M"),
|
|
("Huasco", "Chile", "CL", "CLHSO", -28.4667, -71.2167, "S"),
|
|
("Caldera Chile", "Chile", "CL", "CLCLD", -27.0667, -70.8333, "S"),
|
|
("Mejillones", "Chile", "CL", "CLMJS", -23.1000, -70.4500, "M"),
|
|
("Tocopilla", "Chile", "CL", "CLTCP", -22.0833, -70.2000, "S"),
|
|
("Lirquen", "Chile", "CL", "CLLQN", -36.7167, -72.9833, "M"),
|
|
("Puerto Montt", "Chile", "CL", "CLPMT", -41.4667, -72.9500, "M"),
|
|
("Chacabuco", "Chile", "CL", "CLCBC", -45.4667, -72.8333, "S"),
|
|
("Puerto Natales", "Chile", "CL", "CLPNT", -51.7333, -72.5000, "S"),
|
|
("Punta Arenas", "Chile", "CL", "CLPUQ", -53.1500, -70.9167, "M"),
|
|
("Puerto Williams", "Chile", "CL", "CLWPU", -54.9333, -67.6167, "S"),
|
|
("Quintero", "Chile", "CL", "CLQTR", -32.7667, -71.5333, "M"),
|
|
("Ventanas", "Chile", "CL", "CLVEN", -32.7500, -71.4833, "M"),
|
|
("Patache", "Chile", "CL", "CLPTC", -20.8167, -70.2167, "S"),
|
|
("Puerto Angamos", "Chile", "CL", "CLPAG", -23.0833, -70.4833, "M"),
|
|
("Guayacan", "Chile", "CL", "CLGYC", -29.9667, -71.3667, "S"),
|
|
("Penco", "Chile", "CL", "CLPCO", -36.7333, -72.9833, "S"),
|
|
("Puerto Chacabuco", "Chile", "CL", "CLPCB", -45.4667, -72.8167, "S"),
|
|
("Cabo Negro", "Chile", "CL", "CLCNG", -52.5667, -70.2667, "S"),
|
|
("San Antonio Intl", "Chile", "CL", "CLSTL", -33.5800, -71.6100, "L"),
|
|
|
|
# --- Peru (~15) ---
|
|
("Callao", "Peru", "PE", "PECLL", -12.0500, -77.1333, "L"),
|
|
("Paita", "Peru", "PE", "PEPAI", -5.0833, -81.1167, "M"),
|
|
("Chimbote", "Peru", "PE", "PECHM", -9.0833, -78.6167, "M"),
|
|
("Salaverry", "Peru", "PE", "PESVR", -8.2333, -79.0167, "M"),
|
|
("Pisco", "Peru", "PE", "PEPSC", -13.7167, -76.2167, "M"),
|
|
("Ilo", "Peru", "PE", "PEILO", -17.6333, -71.3500, "M"),
|
|
("Matarani", "Peru", "PE", "PEMAT", -17.0000, -72.1000, "M"),
|
|
("General San Martin", "Peru", "PE", "PEGSM", -13.7833, -76.2833, "M"),
|
|
("Bayovar", "Peru", "PE", "PEBAY", -5.8000, -81.0667, "M"),
|
|
("Talara", "Peru", "PE", "PETAL", -4.5833, -81.2833, "S"),
|
|
("Supe", "Peru", "PE", "PESUP", -10.7833, -77.7333, "S"),
|
|
("Huacho", "Peru", "PE", "PEHCH", -11.1167, -77.6167, "S"),
|
|
("Chancay", "Peru", "PE", "PEACN", -11.5667, -77.2667, "M"),
|
|
|
|
# --- Ecuador (~10) ---
|
|
("Guayaquil", "Ecuador", "EC", "ECGYE", -2.2833, -79.9000, "L"),
|
|
("Esmeraldas", "Ecuador", "EC", "ECESSM", 0.9500, -79.6667, "M"),
|
|
("Manta", "Ecuador", "EC", "ECMEC", -0.9500, -80.7333, "M"),
|
|
("Puerto Bolivar", "Ecuador", "EC", "ECPBO", -3.2667, -80.0000, "M"),
|
|
("La Libertad", "Ecuador", "EC", "ECLLD", -2.2167, -80.9167, "M"),
|
|
("Balao", "Ecuador", "EC", "ECBAL", -1.0333, -79.8833, "M"),
|
|
("San Lorenzo", "Ecuador", "EC", "ECSNL", 1.2833, -78.8500, "S"),
|
|
|
|
# --- Colombia Pacific (~5) ---
|
|
("Buenaventura", "Colombia", "CO", "COBUN", 3.8833, -77.0667, "L"),
|
|
("Tumaco", "Colombia", "CO", "COTCO", 1.7833, -78.7667, "S"),
|
|
("Aguadulce", "Colombia", "CO", "COAGD", 3.9500, -77.4000, "S"),
|
|
]
|
|
for t in saw:
|
|
part3_ports.append({**p3(*t), "region": "SAW"})
|
|
|
|
|
|
# ============================================================
|
|
# 6. AUSTRALIA / NZ / PACIFIC (AUSNZ) ~100 ports
|
|
# ============================================================
|
|
|
|
ausnz = [
|
|
# --- Australia (~60) ---
|
|
("Sydney", "Australia", "AU", "AUSYD", -33.8688, 151.2093, "L"),
|
|
("Melbourne", "Australia", "AU", "AUMEL", -37.8136, 144.9631, "L"),
|
|
("Brisbane", "Australia", "AU", "AUBNE", -27.3833, 153.1167, "L"),
|
|
("Fremantle", "Australia", "AU", "AUFRE", -32.0569, 115.7439, "L"),
|
|
("Port Hedland", "Australia", "AU", "AUPHE", -20.3167, 118.5833, "L"),
|
|
("Dampier", "Australia", "AU", "AUDAM", -20.6667, 116.6833, "L"),
|
|
("Adelaide", "Australia", "AU", "AUADL", -34.8500, 138.5167, "M"),
|
|
("Gladstone", "Australia", "AU", "AUGLT", -23.8500, 151.2667, "L"),
|
|
("Townsville", "Australia", "AU", "AUTSV", -19.2500, 146.7833, "M"),
|
|
("Cairns", "Australia", "AU", "AUCNS", -16.9167, 145.7833, "M"),
|
|
("Darwin", "Australia", "AU", "AUDRW", -12.4634, 130.8456, "M"),
|
|
("Geelong", "Australia", "AU", "AUGEX", -38.1500, 144.3667, "M"),
|
|
("Hay Point", "Australia", "AU", "AUHPT", -21.2833, 149.3000, "L"),
|
|
("Abbot Point", "Australia", "AU", "AUAPT", -19.8833, 148.0833, "M"),
|
|
("Mackay", "Australia", "AU", "AUMKY", -21.1333, 149.1833, "M"),
|
|
("Bundaberg", "Australia", "AU", "AUBDB", -24.7667, 152.3500, "S"),
|
|
("Port Kembla", "Australia", "AU", "AUPKL", -34.4667, 150.9000, "M"),
|
|
("Newcastle", "Australia", "AU", "AUNTL", -32.9167, 151.7833, "L"),
|
|
("Botany Bay", "Australia", "AU", "AUBOT", -33.9833, 151.2167, "L"),
|
|
("Port Augusta", "Australia", "AU", "AUPAG", -32.4833, 137.7833, "S"),
|
|
("Whyalla", "Australia", "AU", "AUWYA", -33.0167, 137.5167, "M"),
|
|
("Port Lincoln", "Australia", "AU", "AUPLI", -34.7333, 135.8667, "S"),
|
|
("Port Pirie", "Australia", "AU", "AUPPI", -33.1833, 138.0167, "S"),
|
|
("Burnie", "Australia", "AU", "AUBWT", -41.0500, 145.9000, "S"),
|
|
("Devonport", "Australia", "AU", "AUDPO", -41.1833, 146.3500, "S"),
|
|
("Hobart", "Australia", "AU", "AUHBA", -42.8833, 147.3167, "M"),
|
|
("Bell Bay", "Australia", "AU", "AUBBE", -41.1167, 146.8500, "S"),
|
|
("Portland VIC", "Australia", "AU", "AUPTL", -38.3500, 141.6167, "S"),
|
|
("Geraldton", "Australia", "AU", "AUGET", -28.7667, 114.6167, "M"),
|
|
("Esperance", "Australia", "AU", "AUEPR", -33.8667, 121.9000, "S"),
|
|
("Albany", "Australia", "AU", "AUALH", -35.0333, 117.8833, "S"),
|
|
("Bunbury", "Australia", "AU", "AUBUY", -33.3000, 115.6500, "M"),
|
|
("Karratha", "Australia", "AU", "AUKTA", -20.7333, 116.8500, "M"),
|
|
("Broome", "Australia", "AU", "AUBME", -17.9667, 122.2333, "S"),
|
|
("Weipa", "Australia", "AU", "AUWEI", -12.6667, 141.8667, "M"),
|
|
("Gove", "Australia", "AU", "AUGOV", -12.2667, 136.7667, "M"),
|
|
("Groote Eylandt", "Australia", "AU", "AUGRO", -13.8500, 136.6000, "S"),
|
|
("Christmas Island", "Australia", "AU", "CXXCH", -10.4167, 105.6833, "S"),
|
|
("Lucinda", "Australia", "AU", "AULUC", -18.5167, 146.3500, "S"),
|
|
("Mourilyan", "Australia", "AU", "AUMOU", -17.5833, 146.0333, "S"),
|
|
("Wyndham", "Australia", "AU", "AUWYN", -15.4500, 128.1000, "S"),
|
|
("Port Walcott", "Australia", "AU", "AUPWL", -20.6000, 117.1833, "M"),
|
|
("Yampi Sound", "Australia", "AU", "AUYAM", -16.1667, 123.5833, "S"),
|
|
("Port Alma", "Australia", "AU", "AUPAM", -23.5833, 150.8667, "S"),
|
|
("Port Latta", "Australia", "AU", "AUPLT", -40.8667, 145.3833, "S"),
|
|
("Ardrossan", "Australia", "AU", "AUARD", -34.4333, 137.9167, "S"),
|
|
("Thevenard", "Australia", "AU", "AUTHR", -32.1500, 133.6333, "S"),
|
|
("Karumba", "Australia", "AU", "AUKRB", -17.4833, 140.8333, "S"),
|
|
("Port Bonython", "Australia", "AU", "AUPBN", -32.9833, 137.7667, "S"),
|
|
("Eden", "Australia", "AU", "AUEDN", -37.0667, 149.9167, "S"),
|
|
("Yamba", "Australia", "AU", "AUYBA", -29.4333, 153.3667, "S"),
|
|
("Coffs Harbour", "Australia", "AU", "AUCFS", -30.3000, 153.1333, "S"),
|
|
("Port Stanvac", "Australia", "AU", "AUPST", -35.1167, 138.5333, "S"),
|
|
("Cape Cuvier", "Australia", "AU", "AUCCV", -24.2333, 113.4000, "S"),
|
|
("Useless Loop", "Australia", "AU", "AUULP", -26.1333, 113.4000, "S"),
|
|
("Varanus Island", "Australia", "AU", "AUVAI", -20.6500, 115.5833, "S"),
|
|
|
|
# --- New Zealand (~15) ---
|
|
("Auckland", "New Zealand", "NZ", "NZAKL", -36.8485, 174.7633, "L"),
|
|
("Tauranga", "New Zealand", "NZ", "NZTRG", -37.6500, 176.1667, "L"),
|
|
("Wellington", "New Zealand", "NZ", "NZWLG", -41.2866, 174.7756, "M"),
|
|
("Lyttelton", "New Zealand", "NZ", "NZLYT", -43.6000, 172.7167, "M"),
|
|
("Napier", "New Zealand", "NZ", "NZNPE", -39.4667, 176.9167, "M"),
|
|
("New Plymouth", "New Zealand", "NZ", "NZNPL", -39.0667, 174.0500, "M"),
|
|
("Nelson", "New Zealand", "NZ", "NZNSN", -41.2667, 173.2833, "S"),
|
|
("Timaru", "New Zealand", "NZ", "NZTIU", -44.3833, 171.2500, "S"),
|
|
("Bluff", "New Zealand", "NZ", "NZBLU", -46.6000, 168.3500, "S"),
|
|
("Port Chalmers", "New Zealand", "NZ", "NZPOE", -45.8167, 170.6167, "M"),
|
|
("Marsden Point", "New Zealand", "NZ", "NZMRP", -35.8333, 174.5000, "M"),
|
|
("Gisborne", "New Zealand", "NZ", "NZGIS", -38.6667, 178.0167, "S"),
|
|
("Whanganui", "New Zealand", "NZ", "NZWAG", -39.9333, 175.0333, "S"),
|
|
("Picton", "New Zealand", "NZ", "NZPCN", -41.2833, 174.0000, "S"),
|
|
("Tauranga Mount Maunganui", "New Zealand", "NZ", "NZMAU", -37.6333, 176.1833, "L"),
|
|
|
|
# --- Papua New Guinea (~8) ---
|
|
("Lae", "Papua New Guinea", "PG", "PGLAE", -6.7333, 147.0000, "M"),
|
|
("Port Moresby", "Papua New Guinea", "PG", "PGPOM", -9.4667, 147.1500, "M"),
|
|
("Rabaul", "Papua New Guinea", "PG", "PGRAB", -4.2000, 152.1833, "S"),
|
|
("Madang", "Papua New Guinea", "PG", "PGMAG", -5.2167, 145.8000, "S"),
|
|
("Wewak", "Papua New Guinea", "PG", "PGWWK", -3.9167, 143.8500, "S"),
|
|
("Kimbe", "Papua New Guinea", "PG", "PGKIM", -5.5500, 150.1500, "S"),
|
|
("Alotau", "Papua New Guinea", "PG", "PGGUR", -10.3167, 150.4500, "S"),
|
|
("Oro Bay", "Papua New Guinea", "PG", "PGORO", -8.9000, 148.5000, "S"),
|
|
|
|
# --- Fiji (~3) ---
|
|
("Suva", "Fiji", "FJ", "FJSUV", -18.1333, 178.4333, "M"),
|
|
("Lautoka", "Fiji", "FJ", "FJLTK", -17.6000, 177.4500, "S"),
|
|
("Levuka", "Fiji", "FJ", "FJLEV", -17.6833, 178.8333, "S"),
|
|
|
|
# --- New Caledonia (~2) ---
|
|
("Noumea", "New Caledonia", "NC", "NCNOU", -22.2667, 166.4500, "M"),
|
|
("Prony Bay", "New Caledonia", "NC", "NCPRO", -22.3500, 166.8333, "S"),
|
|
|
|
# --- Guam (~2) ---
|
|
("Apra Harbor", "Guam", "GU", "GUAPR", 13.4443, 144.6564, "M"),
|
|
|
|
# --- Samoa (~2) ---
|
|
("Apia", "Samoa", "WS", "WSAPW", -13.8333, -171.7500, "S"),
|
|
|
|
# --- Tonga (~1) ---
|
|
("Nukualofa", "Tonga", "TO", "TONUK", -21.1333, -175.2000, "S"),
|
|
|
|
# --- Solomon Islands (~1) ---
|
|
("Honiara", "Solomon Islands", "SB", "SBHIR", -9.4333, 160.0500, "S"),
|
|
|
|
# --- Vanuatu (~1) ---
|
|
("Port Vila", "Vanuatu", "VU", "VUVLI", -17.7333, 168.3167, "S"),
|
|
|
|
# --- Tahiti (~1) ---
|
|
("Papeete", "French Polynesia", "PF", "PFPPT", -17.5333, -149.5667, "M"),
|
|
|
|
# --- Marshall Islands (~1) ---
|
|
("Majuro", "Marshall Islands", "MH", "MHMAJ", 7.0903, 171.3803, "S"),
|
|
|
|
# --- Palau (~1) ---
|
|
("Koror", "Palau", "PW", "PWROR", 7.3386, 134.4736, "S"),
|
|
|
|
# --- Tuvalu (~1) ---
|
|
("Funafuti", "Tuvalu", "TV", "TVFUN", -8.5167, 179.2167, "S"),
|
|
|
|
# --- Kiribati (~1) ---
|
|
("Tarawa", "Kiribati", "KI", "KITRW", 1.4500, 173.0000, "S"),
|
|
|
|
# --- Nauru (~1) ---
|
|
("Nauru", "Nauru", "NR", "NRINU", -0.5333, 166.9167, "S"),
|
|
|
|
# --- American Samoa (~1) ---
|
|
("Pago Pago", "American Samoa", "AS", "ASPPG", -14.2667, -170.7000, "S"),
|
|
|
|
# --- Northern Mariana Islands (~1) ---
|
|
("Saipan", "Northern Mariana Islands", "MP", "MPSPN", 15.2100, 145.7500, "S"),
|
|
|
|
# --- FSM (~1) ---
|
|
("Pohnpei", "Federated States of Micronesia", "FM", "FMPNI", 6.9667, 158.2167, "S"),
|
|
]
|
|
for t in ausnz:
|
|
part3_ports.append({**p3(*t), "region": "AUSNZ"})
|
|
|
|
|
|
# ============================================================
|
|
# Summary
|
|
# ============================================================
|
|
|
|
if __name__ == "__main__":
|
|
from collections import Counter
|
|
region_counts = Counter(p["region"] for p in part3_ports)
|
|
print(f"Total ports in part3: {len(part3_ports)}")
|
|
for region, count in sorted(region_counts.items()):
|
|
print(f" {region}: {count}")
|