!bgslixpNIwVQloUVCx:grin.hu

OSM szerszámzat

34 Members
OpenStreetMap hozzájárulás kapcsán: QA eszközök, parszerek, transzformációk, importálók, crawlerek Tér (space): #magyarul:matrix.org #osm-hu:matrix.org #programozok:matrix.org wiki.osm.org/Hungary/Szersz%C3%A1mzat magyar7 Servers

Load older messages


SenderMessageTime
19 Apr 2024
@bkil:grin.hubkilAz oldaladat be tudjuk könnyen linkelni az OSM szerszámzat oldalra (vagy akár egyesével a tooljaid mélyebb linkeit) Viszont azt nem tartom praktikusnak, hogy a mátrix eldobható kitűzési funkciójában elvesszen az ilyesmi, vagy akár hogy neked kelljen a forrást az OSM wiki-n karbantartani például (onnan amúgy sem tudja húzd és viddel telepíteni a felhasználó, mert tisztítja a hivatkozásokat)20:42:53
@bkil:matrix.orgbkilMég egy praktikus funkció amit néha belerakok, hogy indításkor megnézni, hogy azon az oldalon vagyunk-e amelyikre volt írva a bookmarklet. Ha nem, odamegy. Következő kattintásra fut. És akkor bookmark + bookmarklet egyben. Ezekből egyszer összerakhatnánk egy OSM/FOSS UserScript store-t is akár ha lesz elég.20:51:04
22 Apr 2024
@urbalazs:grin.huurbalazs

https://codeberg.org/urbalazs/osm-poi-hintmaker

Referenciaadatok alapján azoknak a helyeknek a megjelenítése, ahonnan valószínűleg hiányoznak térképelemek az OpenStreetMap adatbázisából, illetve azoknak az OpenStreetMap-adatoknak a jelzése, amelyek nem találhatóak meg a referenciában.

16:32:01
@itineris:grin.huitineris
In reply to @urbalazs:grin.hu

https://codeberg.org/urbalazs/osm-poi-hintmaker

Referenciaadatok alapján azoknak a helyeknek a megjelenítése, ahonnan valószínűleg hiányoznak térképelemek az OpenStreetMap adatbázisából, illetve azoknak az OpenStreetMap-adatoknak a jelzése, amelyek nem találhatóak meg a referenciában.

Felveszed a Wikibe is?
19:03:06
@urbalazs:grin.huurbalazsIgen19:03:43
23 Apr 2024
@bkil:grin.hubkilFixme elektronikai hulladék gyűjtőpontok listája https://www.janegoodall.hu/programjaink/passzold-vissza-teso-mobil-ujrahasznositas11:48:52
@bkil:grin.hubkilhttps://kovet.hu/passzold-vissza-teso-kampany/11:50:36
24 Apr 2024
@urbalazs:grin.huurbalazs
In reply to @urbalazs:grin.hu

Kicsit felturbóztam a https://nav.gov.hu/adatbazisok/elemiszer_ertekesites oldalt :)

  1. Böngészőkonzol (F12).
  2. Másold be ezt:
$('input[aria-label="Automata regisztrációs száma*"]').after('<div id="nav-response"></div>').after('<button id="mybutton">Tömeges lekérdezés</button>').after('<textarea id="mytextarea" style="height:200px"></textarea>');
$('#mybutton').on("click", function() {
	var vendingRegs = $('#mytextarea').val().split('\n');
	vendingRegs.forEach(function(item) {
		$.get( "https://backend-www05.nav.gov.hu/api/automata", { azonosito: item, t: grecaptcha.getResponse() } )
		.done(function( data ) {
			$("#nav-response").append( '<p>' + data.content[0].regszam + "\t" + data.content[0].uzemeltetesiHely + '</p>' );
		}, "json");
	});
});
  1. Enter. Lesz egy új szövegdobozod egy gombbal.
  2. Másolj be soronként egy U-számot, majd validáld megad, hogy nem vagy robot.
  3. Nyomd meg a tömeges lekérdezés gombot, és örülj :)

Átírtam, hogy legyen benne 300 ms várakozás a hívások között. Az volt a baj, hogy egyszerre dobta oda a NAV API-nak az összes számot, és ezért nem kapott választ az összesre. Most üzembiztosan működik:

var vendingRegs;     // a szövegdobozból kiszedett U-számok egy tömbben
var vendingNum;      // 0-tól induló számláló, a fenti tömb indexe
var vendingTimer;    // időzítő a függvény késleltetéséhez      

$('input[aria-label="Automata regisztrációs száma*"]').after('<div id="nav-response"></div>').after('<button id="mybutton">Tömeges lekérdezés</button>').after('<textarea id="mytextarea" style="height:200px"></textarea>');
$('#mybutton').on("click", function() {
	vendingNum   = 0;
	vendingRegs  = $('#mytextarea').val().trim().split('\n');
	vendingTimer = setInterval(function() {
		if (vendingNum == vendingRegs.length) {
			clearInterval(vendingTimer);
		}
		else {
			$.get( "https://backend-www05.nav.gov.hu/api/automata", { azonosito: vendingRegs[vendingNum++], t: grecaptcha.getResponse() } )
			.done(function( data ) {
				$("#nav-response").append( '<p>' + data.content[0].regszam + "\t" + data.content[0].uzemeltetesiHely + '</p>' );
			}, "json");
		}
	}, 300);
});
12:04:29
@itineris:grin.huitinerisScript kiddie.12:08:14
@dnet:matrix.orgdnetsd-osm.jpg
Download sd-osm.jpg
12:12:31
@dnet:matrix.orgdnetmár a második oldalt kezdtem meg gombokkal feltölteni :)12:12:41
@urbalazs:grin.huurbalazsA NAV captcha token 1 percig él, ez alatt kb. 200 kérést lehet elküldeni. Átlagosan 906 távolságra kell lenniük a számoknak. Ha a captcha megfejtését nem számolom (ami egyre szemetebb, van, hogy 5-6 megfejtés kell, hogy elhiggye, nem vagyok robot), akkor kb 4 perc alatt lehet 1 számot kipörgetni. Ez 300 nap, ha éjjel-nappal nyomom.13:03:48
@urbalazs:grin.huurbalazs * A NAV captcha token 1 percig él, ez alatt kb. 200 kérést lehet elküldeni. Átlagosan 906 távolságra kell lenniük a számoknak. Ha a captcha megfejtését nem számolom (ami egyre szemetebb, van, hogy 5-6 megfejtés kell, hogy elhiggye, nem vagyok robot), akkor kb 5 perc alatt lehet 1 számot kipörgetni. Ez 380 nap, ha éjjel-nappal nyomom.13:04:26
@urbalazs:grin.huurbalazsAz eddigi legfurább szám: U00000883 Ez az egyetlen eddig, amely 0-val kezdődik. Minden, amit találtunk, 1-9 az első számjegye.13:06:55
@bkil:grin.hubkilProbléma a snippetben: az osztott állapottér miatt fura dolgok történhetnek ha benyomod újra a gombot miközben fut egy lekérés. Kellene egy clearInterval és vendingTimer=undefined ha benyomják újra a gombot például. Illetve hasznos lenne megnézni, hogy be van-e már szúrva még mielőtt beszúrja, mert ha többször bemásolod akkor is lehetnek érdekességek. Valószínűleg érdemes lehet mindig kipurgálni gombnyomások között az előző eredményét, esetleg a textarea-t is.13:15:54
@bkil:grin.hubkilTöbbet tudna teljesíteni a script, ha 0 várakozást raknál bele, viszont lenne az ajax hívásodon ontimeout, amire ugyanazt bepróbálná exponenciális várakozás után (max. ötször például)13:16:53
@urbalazs:grin.huurbalazsNem a felhasználóbarát működés volt a cél :) Én tudom használni, és tisztában vagyok ezekkel, ezért nem nyomkodok futás közben.13:17:05
@bkil:grin.hubkilVárakozás nélkül amúgy kb. hány százalék volt a veszteség?13:17:56
@urbalazs:grin.huurbalazsLehet próbálgatni, a 0 szerintem kevés. Emlékeim szerint 40 alá nem érdemes menni a setTimeout() értékével, én ezt tapasztaltam.13:17:58
@urbalazs:grin.huurbalazsVárakozás nélkül volt olyan, hogy 10 számra csak 3-at adott vissza. Ha újra megnyomtam, akkor 7-et. Aztán 5-öt. --> nemdeterminisztikus13:18:39
@itineris:grin.huitinerisMindjárt megy rátok a TEK a NAV DoS-olása miatt...13:19:04
@bkil:grin.hubkilItt van egy olyan sejtésem, hogy 300ms várakozás után már új socketet nyit a böngésző amit lehet, hogy másik gépre route-ol a load balancer. Míg kisebb értékeknél ugyanazon keep-alive kapcsolaton pipeline-szerűen betolja mind (ami hatékonyabb mind a szerver, mind a kliens szempontjából).13:19:36
@bkil:grin.hubkil
In reply to@urbalazs:grin.hu
Várakozás nélkül volt olyan, hogy 10 számra csak 3-at adott vissza. Ha újra megnyomtam, akkor 7-et. Aztán 5-öt. --> nemdeterminisztikus
Nem kell determinisztikusnak lennie.
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/timeout
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/timeout_event
13:20:38
@urbalazs:grin.huurbalazsAz adózás rendjéről szóló 2017. évi CL. törvény 266. § h. pontja írja elő, hogy az adatbázist a NAV-nak elérhetővé kell tennie a honlapján. Igazából én panaszolhatnám be amiatt, hogy egy amerikai szolgáltató ÁSZF-ét el kell fogadnom ahhoz, hogy hozzáférjek egy magyar jogszabályok által előírt adatokhoz.13:21:14
@bkil:grin.hubkilA térképwidgetem is így működik: lekéri az egyik csempekiszolgálótól és ha az nem válaszol párszázon belül már küldi is a kérést a következőhöz a listában.13:21:23
@bkil:grin.hubkilVagy lehetne adaptívan TCP-által inspirálva nyilvántartani egy ablakot az utolsó in-flight lekérdezésről amit folyamatosan növelsz ahogy jönnek vissza a válaszok. Eleinte például 8-at küldesz be egyszerre, aztán 9, 10, stb13:23:18
@bkil:grin.hubkilUgyanúgy ahogy nő a veszteség vagy a mért válaszidő, úgy lehet csökkenteni a párhuzamosságot visszafelé.13:23:53
@urbalazs:grin.huurbalazsLehet méregetni, próbálkozni, gyorsítani a futást, de szerintem a 300 ms elég jó kompromisszumos megoldás 0 utánajárással. Nyilván, az összes szám kipörgetéséhez nem elegendő, de a jelenleg ismert kb. 600 számot 3 munkamenet alatt le tudom kérni, a captcha megfejtéssel együtt is 5 perc alatt megvan. Erre írtam a szkriptet.13:24:40
@vasony:grin.huvasonyRedacted or Malformed Event18:17:06
@vasony:grin.huvasony * @bkil be tudod tenni ezt egy bookmarkletbe, nekedmégis nagyobb rutinod ban benne, ne én kinlódjak már. 18:18:21

Show newer messages


Back to Room ListRoom Version: 5