Informace o zóně poštovního směrovacího čísla USPS

Pokouším se zobrazit informace o přepravní zóně USPS, ale část webu USPS, ze které jsem tyto informace škrábal, byla porušena po celé měsíce a zajímalo by mě, jestli někdo zná jiný způsob, jak to získat v porovnatelném formátu?

Stránka, která byla několik měsíců rozbitá, je zde: http://postcalc.usps.gov/Zonecharts/ZoneChartPrintable.aspx?zipcode=931

Mají stejný graf v nepříliš analyzovatelném formátu zde: http://postcalc.usps.gov/Zonecharts/

Tyto informace ukládám do mezipaměti, takže není nutné je neustále vyžadovat, ale mezipaměť je občas vymazána, protože zóny se mění čas od času.

Odpověď

Zde je kód, který používám k načtení dat JSON, která vyplňují http://postcalc.usps.gov/Zonecharts/ .

private String getZoneJSON(String zip3Digit) { URL url; HttpURLConnection con; String zoneJSON = null; try { url = new URL("https://postcalc.usps.com/DomesticZoneChart/GetZoneChart?ZIPCode3Digit=" + zip3Digit + "&ExcelFormat=1"); con = (HttpURLConnection) url.openConnection(); con.setRequestMethod("GET"); con.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36"); con.setRequestProperty("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8"); con.setRequestProperty("DNT", "1"); con.setInstanceFollowRedirects(false); InputStream h = (InputStream) con.getContent(); BufferedReader r = new BufferedReader(new InputStreamReader(h)); zoneJSON = r.readLine(); } catch(Exception e) { e.printStackTrace(); } return zoneJSON; } 

Komentáře

  • To je perfektní, díky. Neměl jsem se za chvíli nevrátili, aby zkontrolovali své nové stránky, ale jsem rád, že nyní místo řetězce HTML zpracovávají řetězec JSON.

Odpověď

Zónu můžete také vypočítat na základě vzdálenosti mezi počátkem souřadnic počátečního SCF (Sectional Center Facility) a cílovým SCF

Zóna 1 : Nelokální zóny v okruhu 50 mil od místa vzniku.

Zóna 2: poloměr 51 až 150 mil

Zóna 3: poloměr 151 až 300 mil

Zóna 4: poloměr 301–600 mil

Zóna 5: poloměr 601–1 000 mil

Zóna 6: poloměr 1001–1400 mil

Zóna 7: Poloměr 1401–1800 mil

Zóna 8: 1801 mil a více

Zóna 9: PSČ přidělená pro výjimečné okolnosti v síti

  • Můžete pokutovat SCF pro každé PSČ zde: https://fast.usps.com/fast/fastApp/resources/labelListFiles.action
  • Souřadnice SCF můžete získat z Google API
  • Jakmile budete mít souřadnice, existuje spousta způsobů vypočítat vzdálenost mezi nimi
  • Můžete také přeskočit souřadnice a jednoduše vypočítat vzdálenost mezi PSČ samotného SCF (nikoli poštovní směrovací čísla, která slouží)

Odpověď

USPS prodává graf celé zóny pro všechny kombinace od-do zip za 63 $ zde: https://postalpro.usps.com/operations/zone-charts

Poslal jsem pro jednoho, protože už měsíce nejsem schopen najít informace kdekoli jinde.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *