[Tehnika] LV adreses pārbaude

1 view
Skip to first unread message

martines

unread,
Aug 17, 2022, 1:24:54 PM8/17/22
to tehnika
Varbūt kāds var ieteikt labu adreses pārbaudīšanas API ko varētu privātām vajadzībām izmantot?
Te "manuāli" var pārbaudīt https://pasts.lv/lv/kategorija/pasta_indeksa_meklesana/ bet vajadzētu automatizēt.

--
M.

neviens via Tehnika

unread,
Aug 18, 2022, 2:34:18 PM8/18/22
to teh...@latnet.lv, neviens
import http.client
import json

conn = http.client.HTTPSConnection('pasts.lv')
header = {'Accept': 'text/html, application/json', 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}
cmd = '/ajax/module:address_selector/?search=&field=&validate'
post = 'city=Rīga&county=&parish=&village=&street=Abavas+iela&house=2&appartment='
conn.request('POST', cmd, post.encode('utf-8'), header)
response = conn.getresponse()
s = response.read()
j = json.loads(s.decode('utf-8'))
print(j['postcode'])
conn.close()

------- Original Message -------

martines

unread,
Aug 20, 2022, 6:32:29 AM8/20/22
to neviens via Tehnika
Ou kei, paldies!
Piefiksēsim, ka caur kobru var pieslēgties.

ceturtd., 2022. g. 18. aug., plkst. 21:34 — lietotājs neviens via Tehnika (<teh...@latnet.lv>) rakstīja:
---------- Forwarded message ----------
From: neviens via Tehnika <teh...@latnet.lv>
To: teh...@latnet.lv
Cc: neviens <nev...@protonmail.com>
Bcc: 
Date: Thu, 18 Aug 2022 18:34:09 +0000
Subject: [Tehnika] Re: LV adreses pārbaude
_______________________________________________
Tehnika mailing list -- teh...@latnet.lv
To unsubscribe send an email to tehnik...@latnet.lv


--
M.

neviens via Tehnika

unread,
Aug 20, 2022, 9:46:58 AM8/20/22
to teh...@latnet.lv, neviens
Pieslēgties var ar dajebko, pat powershellu.
Problēma būs automātiski validēt adresi ar daudzveidīgajiem db pasta adresu laukiem.
Oriģinālā tas ir realizēts pakāpeniski manuāli ielādējot formā laukus pa vienam un izfiltrējot liekos.
Piem., sākumā tiek ielādētas visas Rīgas ielas ar:

$enc = [System.Text.Encoding]::UTF8
$body = "city=Rīga&county=&parish=&village=&street=&house=&appartment="
$cont = "application/x-www-form-urlencoded; charset=UTF-8"
$rp = iwr $uri -Method 'POST' -ContentType $cont -Body $enc.GetBytes($body)
$rp = ConvertFrom-Json $rp.Content
$rp.results

, tad attiecīgās ielas nami ar:

...
$body = "city=Rīga&county=&parish=&village=&street=Abavas+iela&house=&appartment="
$uri  = "https://pasts.lv/ajax/module:address_selector?search=&field=house&validate="
...

, tad izvēlēts nepieciešamais nams, tad dabūts ID un indekss.

Ar novadiem un ciemiem tas viss kļūst vēl sarežģītāks.

Vēl var uzrakstīt skriptu, kurš novelk visu pie savis un sagrūž kādā SQLite bāzītē,
kurai var pieskrūvēt kādu appu, un visu jau grabināt offlainā.
Vienīgi laiku pa laikam būs lokalā kopija jāapdeito.


------- Original Message -------
Reply all
Reply to author
Forward
0 new messages