Hello!
Van nekem egy dijnet.hu-s előfizetésem. Megvan már pár éve, van benne jó sok számla. Szeretném ezeket letölteni, de sajnos csak egyenként lehet és azt is egy táblázatból kiválasztva, majd klikkelve. Számoltam, kb 2000 klikkelés lenne letölteni mindent, plusz persze az idő. Tud esetleg valaki valami kényelmes megoldást? (az oldalon a kontaktot kérdeztem, sajnos nem segített)
- 18495 megtekintés
Hozzászólások
Próbáld meg HttpFox segítségével megfejteni a következőket:
- lista lekérés
- egy pdf letöltés
Ezek után némi türelemmel és script segítségével írhatsz olyan wget-et használó scriptet, ami mindent letölt.
- A hozzászóláshoz be kell jelentkezni
Megpróbáltam, egyelőre nem működik.
Ahogy látom, a díjnet oldalán ez lenne a login rész:
<form name="loginform" action="/ekonto/login/login_check_password" method="post">
<input name="vfw_form" type="hidden" value="login_check_password" />
<input name="username" class="text_username" type="text" placeholder="Bejelentkezési név" />
<input name="password" class="text_password" type="password" placeholder="Jelszó" />
<input style="margin-top: 3px;" class="button" type="submit" value="Belépek" />
</form>
Ezek alapján a következővel próbálkoztam:
wget --save-cookies cookies.txt --keep-session-cookies --post-data 'username=FELHASZNALONEV&password=JELSZO' https://www.dijnet.hu/ekonto/login/login_check_password
Erre csinált egy cookies.txt fájlt, amiben ez van:
www.dijnet.hu FALSE /ekonto TRUE 0 JSESSIONID XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
és csinált egy login_check_password fájlt is, de sajnos ez alapján nem sikerült a login és érdekes, de az oldalon szerepel a "Program hiba" szöveg is. Lehet, hogy valami javascriptes dolog van mögötte? Esetleg valakinek van tippje?
- A hozzászóláshoz be kell jelentkezni
hmm, megoldottam seleniummal.
- A hozzászóláshoz be kell jelentkezni
Mivel, hogy kaptam egy olyan levelet, hogy
"Mivel a DijNet 2017-től midenkinek fizetőssé teszi a 18 hónapnál
régebbi számlák elérését, szeretném a segítséged kérni hogy
miként sikerült Seleniummal letöltened az összes számlát.
Én Seleniumot eddig még sosem használtam, így minden info, ötlet,
kódrészletért nagyon hálás lennék.
Előre is köszönöm a segítséged! "
Ezért írom, amire emlékszem:
- a seleniumról IDE kb egy tesztelés támogató eszköz. Arra képes, hogy felvegyen makróba dolgokat, majd később lejátssza a makrót. Ezt egyébként tudja build folyamatból is, tehát pl programozásnál nagyon hasznos, hogy webes felület teszteket lehet vele csinálni. Vagy legalább is, amikor még programoztam, akkor ez volt a mondás :-) Bővebb infó: http://www.seleniumhq.org/ https://en.wikipedia.org/wiki/Selenium_(software)
- selenium IDE letöltése és installálása pl firefox-hoz: https://addons.mozilla.org/en-US/firefox/addon/selenium-ide/
- a tools menüben lesz egy selenium IDE menü, válaszd ki
- az új megjelenő ablakban, file --> open --> betölteni mind a szkripteket)
- írd át a szkriptekben a LOGIN_XXXXXXX-eket a megfelelő azonosítóra.
- loginolj be a weboldalon a díjnetbe
- indítsd a szkriptet.
Fentartom, hogy akkor ez működött és nem mindenre emlékszem már. Ha jól emlékszem, akkor kézzel beloginoltam a díjnet oldalába és utána indítgattam a szkripteket. Ha azóta változott a díjnet oldala, akkor a fentiek már nem működnek, mert a selenium a weboldal felépítéséből tájékozódik. Ha azóta változott a weboldal (akár csak egy gomb ID-ja), akkor a szkripteken is változtatni kell. Leellenőrizni nem tudom a működésüket most, mert akkor megszüntettem a díjnetet, mert nem éreztem őket elég ügyfélközpontúnak.
Itt vannak a kódok is (igen, most ilyen bénán idemásolom őket. Az első sor a fájlnév, aztán a fájl tartalma):
dijbeszedot_kivalasztja_es_mindet_letolti.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="https://www.dijnet.hu/" />
<title>dijbeszedot_kivalasztja_es_mindet_letolti</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">dijbeszedot_kivalasztja_es_mindet_letolti</td></tr>
</thead><tbody>
<tr>
<td>store</td>
<td>1</td>
<td>x</td>
</tr>
<tr>
<td>label</td>
<td>kezdet</td>
<td></td>
</tr>
<tr>
<td>echo</td>
<td>'---------------------------------'</td>
<td></td>
</tr>
<tr>
<td>echo</td>
<td>${x}</td>
<td></td>
</tr>
<tr>
<td>open</td>
<td>/ekonto/control/szamla_letolt</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>link=Számlakeresés</td>
<td></td>
</tr>
<tr>
<td>select</td>
<td>name=regszolgid</td>
<td>label=</td>
</tr>
<tr>
<td>select</td>
<td>name=regszolgid</td>
<td>label=díjbeszedő (LOGIN_XXXXXXX)</td>
</tr>
<tr>
<td>click</td>
<td>css=option.47338196</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>id=button_gen_N1012B</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>//table[@id='listframetable_N1012F_scroll']/tbody/tr[${x}]/td[2]/a/div</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>link=Letöltés</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>css=div.xt_link_cell__download</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>storedVars['x']=${x}+1</td>
<td></td>
</tr>
<tr>
<td>gotoIf</td>
<td>${x}<555</td>
<td>kezdet</td>
</tr>
<!---->
</tbody></table>
</body>
</html>
elmut_kivalasztja_es_mindet_letolti.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="https://www.dijnet.hu/" />
<title>fogaz_kivalaszt_es_egyet_letolt</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">elmut_kivalasztja_es_mindet_letolti</td></tr>
</thead><tbody>
<tr>
<td>store</td>
<td>1</td>
<td>x</td>
</tr>
<tr>
<td>label</td>
<td>kezdet</td>
<td></td>
</tr>
<tr>
<td>echo</td>
<td>'---------------------------------'</td>
<td></td>
</tr>
<tr>
<td>echo</td>
<td>${x}</td>
<td></td>
</tr>
<tr>
<td>open</td>
<td>/ekonto/control/szamla_letolt</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>link=Számlakeresés</td>
<td></td>
</tr>
<tr>
<td>select</td>
<td>name=regszolgid</td>
<td>label=</td>
</tr>
<tr>
<td>select</td>
<td>name=regszolgid</td>
<td>label=elmű (LOGIN_XXXXXXX)</td>
</tr>
<tr>
<td>click</td>
<td>css=option.47338196</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>id=button_gen_N1012B</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>//table[@id='listframetable_N1012F_scroll']/tbody/tr[${x}]/td[2]/a/div</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>link=Letöltés</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>css=div.xt_link_cell__download</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>storedVars['x']=${x}+1</td>
<td></td>
</tr>
<tr>
<td>gotoIf</td>
<td>${x}<555</td>
<td>kezdet</td>
</tr>
<!---->
</tbody></table>
</body>
</html>
fogazt_kivalasztja_es_mindet_letolti.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="https://www.dijnet.hu/" />
<title>fogaz_kivalaszt_es_egyet_letolt</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">fogaz_kivalasztja_es_mindet_letolti</td></tr>
</thead><tbody>
<tr>
<td>store</td>
<td>1</td>
<td>x</td>
</tr>
<tr>
<td>label</td>
<td>kezdet</td>
<td></td>
</tr>
<tr>
<td>echo</td>
<td>'---------------------------------'</td>
<td></td>
</tr>
<tr>
<td>echo</td>
<td>${x}</td>
<td></td>
</tr>
<tr>
<td>open</td>
<td>/ekonto/control/szamla_letolt</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>link=Számlakeresés</td>
<td></td>
</tr>
<tr>
<td>select</td>
<td>name=regszolgid</td>
<td>label=</td>
</tr>
<tr>
<td>select</td>
<td>name=regszolgid</td>
<td>label=főgáz (LOGIN_XXXXXXX)</td>
</tr>
<tr>
<td>click</td>
<td>css=option.47338196</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>id=button_gen_N1012B</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>//table[@id='listframetable_N1012F_scroll']/tbody/tr[${x}]/td[2]/a/div</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>link=Letöltés</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>css=div.xt_link_cell__download</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>storedVars['x']=${x}+1</td>
<td></td>
</tr>
<tr>
<td>gotoIf</td>
<td>${x}<555</td>
<td>kezdet</td>
</tr>
<!---->
</tbody></table>
</body>
</html>
UPCt_kivalasztja_es_mindet_letolti.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="https://www.dijnet.hu/" />
<title>fogaz_kivalaszt_es_egyet_letolt</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">UPCt_kivalasztja_es_mindet_letolti</td></tr>
</thead><tbody>
<tr>
<td>store</td>
<td>1</td>
<td>x</td>
</tr>
<tr>
<td>label</td>
<td>kezdet</td>
<td></td>
</tr>
<tr>
<td>echo</td>
<td>'---------------------------------'</td>
<td></td>
</tr>
<tr>
<td>echo</td>
<td>${x}</td>
<td></td>
</tr>
<tr>
<td>open</td>
<td>/ekonto/control/szamla_letolt</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>link=Számlakeresés</td>
<td></td>
</tr>
<tr>
<td>select</td>
<td>name=regszolgid</td>
<td>label=</td>
</tr>
<tr>
<td>select</td>
<td>name=regszolgid</td>
<td>label=UPC (LOGIN_XXXXXXX)</td>
</tr>
<tr>
<td>click</td>
<td>css=option.47338196</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>id=button_gen_N1012B</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>//table[@id='listframetable_N1012F_scroll']/tbody/tr[${x}]/td[2]/a/div</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>link=Letöltés</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>css=div.xt_link_cell__download</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>storedVars['x']=${x}+1</td>
<td></td>
</tr>
<tr>
<td>gotoIf</td>
<td>${x}<555</td>
<td>kezdet</td>
</tr>
<!---->
</tbody></table>
</body>
</html>
- A hozzászóláshoz be kell jelentkezni
Hello Raki!
Még egyszer köszönöm, frissítettem a kódokat, most menti le szépen a számlákat.
Ha valaki más is ide jut van frissített kód ELMŰ-höz, UPC-hez és Dijbeszedő-höz.
Üdv,
Gasa
- A hozzászóláshoz be kell jelentkezni
a dolgozó népet szolgálom... :-)
- A hozzászóláshoz be kell jelentkezni
Sziasztok,
ha még megvan, én kérném szépen a scripteket.
Köszi,
üdv,
Gergő
- A hozzászóláshoz be kell jelentkezni
Érdemes volna githubra felrakni, nem?
--
Gábriel Ákos
http://ixenit.com
- A hozzászóláshoz be kell jelentkezni
Köszi, én kicsit átalakitottam, hogy ne töltse újra mindig a listát és ne kelljen a scriptbe beleirni az azonositókat. (nekem csak upc van benne, igy csak azzal próbáltam)
Bemész kézzel a számlakeresésbe, kiválasztod az azonositót (leszűröd akár dátumra) keresésgomb, hogy bejöjjön a lista és utána inditod a scriptet:
Még az xml letöltést is bele lehetne rakni...
A pause(1000) nekem kellett a számlaletöltés click után, különben néha kiakadt.
(ja a selenium mellé nekem ezt a plugint is fel kellett tegyem: https://addons.mozilla.org/hu/firefox/addon/flow-control/ )
- A hozzászóláshoz be kell jelentkezni
Még annyit tennék hozzá, hogy nálam a Firefoxban az Electrolysis-t ki kellett kapcsolnom, mert azzal elhasalt a Selenium.
- A hozzászóláshoz be kell jelentkezni
Köszönöm!
Nekem három dolgot kellett ezen "javítanom", hogy jól menjen:
- 36. sorban a 'listframetable_N*****_scroll'-ban az N-ID-t átírni
- 41. sorban
cseréje
-re
- 51. sor pause-t én feljebb vettem 2000-re
Gergő
- A hozzászóláshoz be kell jelentkezni
Ezek szerint az az ID változik.
Az ékezet szerintem nálam kutyulódott el mikor pastebinre raktam.
- A hozzászóláshoz be kell jelentkezni
A cookie-t lementheted a bongeszoben is, es atadhatod azt a wgetnek.
- A hozzászóláshoz be kell jelentkezni
Köszönöm a tanácsot! Igen, gondoltam erre, de a firefox valami sqlite DB-ben tárolja a cookie-kat, ha jól láttam és onnan kiszedni macera lett volna.
plusz a wget-tel szenvedvem egy kicsit, nem biztos, hogy meg lehet oldani a javascript miatt. Seleniummal egyszerű volt megoldani a dolgot.
- A hozzászóláshoz be kell jelentkezni
Firefoxban a cookiet konnyu megszerezni. Adott oldalon a Tools menu Page Info almenut kivalasztod, a megjeleno ablakban Security ful, majd View Cookies.
- A hozzászóláshoz be kell jelentkezni
sub
- A hozzászóláshoz be kell jelentkezni
Köszi a hozzájárulást mindenkinek, hatalmas segítség volt, pedig nem értek ám a webfejlesztéshez... :)
- A hozzászóláshoz be kell jelentkezni
Osszedobtam egy script-et, ami lementi az osszes dijnet-es szamlat:
https://github.com/wolandmaster/dijnet-dump/blob/master/dijnet-dump.sh
- A hozzászóláshoz be kell jelentkezni
Bár én már letöltöttem a számlákat, de ezért a megoldásért küldök egy rekesz virtuális sört :)
- A hozzászóláshoz be kell jelentkezni
+1
thx
- A hozzászóláshoz be kell jelentkezni
zsenialis, thx!
- A hozzászóláshoz be kell jelentkezni
Ezer köszönet!
------------------------
{0} ok boto
boto ?
- A hozzászóláshoz be kell jelentkezni
Nagyon jól működik, köszönöm szépen!
(Ui: jól sejtem, hogy ha wgetnek jövő ilyenkor adok egy -N kapcsolót, akkor meg van oldva az inkrementális mentés?)
- A hozzászóláshoz be kell jelentkezni
Jo otlet. Bar a timestamping (-N) nem mukodik, mert letolteskor nem a remote file datumaval mentodik a file,
de a no-clobber jo, szoval be is csekkeltem egy uj verziot.
- A hozzászóláshoz be kell jelentkezni
Köszi! Hasznos!
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Nagyon szépen szortírozva leszedte a számlákat! :)
Ettől függetlenül lehet, hogy azt a havi 10 forintot kifizetem.
Software is like sex, it's better with a penguin. :D (r)(tm)(c) آكوش
- A hozzászóláshoz be kell jelentkezni
Marmint 80-ra gondoltal. Evente 991 Ft-ot kell fizetned nehany MB tarhelyert.
- A hozzászóláshoz be kell jelentkezni
100-at akartam írni, de egy 0 lemaradt. Mondjuk nem olvastam el, hogy ennyi pénzért garantálják-e, hogy meg is marad minden számla..
Nem tárhely szolgáltatás. Általánosságban elmondható, hogy szolgáltatásnál van egy fix költség, valószínűleg nem a felhasznált MiB-ek befolyásolják leginkább.
Software is like sex, it's better with a penguin. :D (r)(tm)(c) آكوش
- A hozzászóláshoz be kell jelentkezni
A szolgáltatás költségét a számlakibocsátók állják.
Most, hogy egyedül maradtak a magyar piacon, a felhasználókat próbálják megfejni kicsit.
- A hozzászóláshoz be kell jelentkezni
szép.
feltűnt már valakinek, hogy honnan a név?
Az mekkora már amikor Lévi Mátén keresztül üzennek Wolandnak hogy "jutalmazza" a Mestert örök nyugalommal, ahelyt hogy a fénybe vennék? (257. o.)
- A hozzászóláshoz be kell jelentkezni
Ehh.... Már megint olvasnom kell...
- - - - - - - - - - -
"A fejlesztők és a Jóisten versenyben vannak. Az előbbiek egyre hülyebiztosabb szerkezeteket csinálnak, a Jóisten meg egyre hülyébb embereket. És hát a Jóisten áll nyerésre." By:nalaca001 valahol máshol
- A hozzászóláshoz be kell jelentkezni
henial! köszi.
"Belépés díjtalan, kilépés bizonytalan."
"Vajon mit várok a sorstól, ha hányok az édestől, és izzadok a sóstól."
- A hozzászóláshoz be kell jelentkezni
Szép munka! Gratulálok
- A hozzászóláshoz be kell jelentkezni
köszi, ez nagyon hasznos!
tipp: A password argumentum lehetne opció, és ha nincs akkor 'read' kérné be.
bugreport: "Csat. Mûv. Zrt." :)
szerk
most nézem a kódot. ezen lehet egyszerűsíteni valami ilyesmit:
s/á/a/g; s/Á/A/g
s/é/e/g; s/É/E/g
s/í/i/g; s/Í/I/g
s/û\|ú\|ü/u/g; s/Û\|Ú\|Ü/U/g
s/õ\|ó\|ö/o/g; s/Õ\|Ó\|Ö/O/g
&([a-zA-Z])[a-zA-Z]+;
Az első részmintára cseréled.
szerk2
ERROR: exit code not zero of command: INVOICE_COUNT=$(echo "${INVOICES}" | wc -w)
- A hozzászóláshoz be kell jelentkezni
Erről felrémlett az a kódrészlet, amikor valaki annyira, de annyira ügyes volt, hogy str_replace-kkel gányolt át egy UCS-2-s szöveget UTF-8-ra, aztán csodálkozott, hogy mindig jött "valami idióta hangjegy karakter", ahelyett, hogy használta volna az iconv-ot.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Kössz. Remekül funkcionál...
- A hozzászóláshoz be kell jelentkezni
Koszi a scriptet!
Sajnos nalam ket szolgaltato utan hibat dob:
ERROR: exit code not zero of command: INVOICE_COUNT=$(echo "${INVOICES}" | wc -w)
Terminated: 15
Nezegettem, hogy van-e kulonbseg az INVOICES -ben, de semmi szamomra lathato.
- A hozzászóláshoz be kell jelentkezni
Nálam is, már keresem az okát. Az biztos, hogy nem az echo-ba hal bele a script, hanem később.
szerk
grep -q 'href="szamla_letolt"' lép ki 1-es hibakóddal (nincs match). Viszont ha lementem a kimenetet, azt megnyitom editorban és úgy keresem a keresett szöveget, akkor ott meg van találat.
szerk2
a for ciklus első sorát kell módosítani így:
dijnet "control/${INVOICE}" | iconv -f iso8859-2 -t utf-8 | grep 'href="szamla_letolt"' || die
Az a gond, hogy a kérdéses sorban van egy ő betű, ami megzavarja a grep-et. Hogy a többi szolgáltatónál miért nincs az jó kérdés.
Env: osx 10.12.2
grep (BSD grep) 2.5.1-FreeBSD
- A hozzászóláshoz be kell jelentkezni
ha reprodukalhato a hiba, akkor futtasd straceval: strace -o kimenet -ff -s 1024 ./program paramterek
es akkor latod a fajlokban hogy ki miert halt el
--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Nálam is elhasalt, de legalább megtaláltam, hogy melyik számlánál.
A "Telekom mobil" szolgáltató olyan során, ahol a rendes (16 karakter, csak szám) számlaszám helyett a "Részletfizetés 2016.01" szöveg van a Számlaszám oszlopban. Lehet, hogy ez borítja meg?
Amúgy összeszámolta, hogy 44 számla van és 16-ot hiba nélkül le is töltött. A 17.-nél, ami a "Részletfizetés", annál szállt el.
Szerk1:
Annyit találtam még, hogy más a href szerkezete.
Normál számlánál ez:
href="szamla_select?vfw_coll=szamla_list&vfw_coll_index=0&vfw_rowid=15&vfw_colid=szamlaszam|egyenleginfo_0"
Részletfizetésnél meg ez:
href="/ekonto/control/szamla_select?vfw_coll=szamla_list&vfw_coll_index=0&vfw_rowid=16&vfw_colid=fizhatdat|R"
Mikor a 81. sorban a for-ciklusban a "control/" után fűzzük a href-et, akkor már invalid URL lesz:
"control//ekonto/control/szamla_select..." és kampec.
A HREF-ből ki kellene pucolni a felesleges "/ekonto/control/" string-et feldolgozás előtt, nem?
Szerk2: Megoldás!
A 78. sor végére betettem még egy 'sed' hívást, ami kiszedi.
...| sed 's/href="\([^"]*\)"/\1 /g;s/\&/\&/g' | sed 's/\/ekonto\/control\///g')
Ezek után hiba nélkül lefutott minden szolgáltató minden számlájára NÁLAM!
- A hozzászóláshoz be kell jelentkezni
Koszi, igy lejott nekem is!
- A hozzászóláshoz be kell jelentkezni
Becsekkeltem, koszi:
https://github.com/wolandmaster/dijnet-dump/commit/af5e26cad01c587c9b5b…
- A hozzászóláshoz be kell jelentkezni
nekem nem volt xmllint telepítve (tudom olvassak, emlékszem 27-én néztem, hogy biztos nem lesz ilyenem, de most fogtam bemásoltam futtattam, nem olvastam), ha már van if which pv, akkor ugyanez wget, xmllintre is mehet :).
külső parancsokat én változóba szoktam tenni ráadásul abszolút elérési úttal, mert evil népek odatesznek neked egy wgetet.
++ wget --quiet --output-document=- --load-cookies /tmp/tmp.S9iWNk9LXe --save-cookies /tmp/tmp.S9iWNk9LXe --keep-session-cookies --post-data '' https://www.dijnet.hu/ekonto/control/szamla_search
++ xpath '//select[@name="szlaszolgid"]/option[string-length(@value)!=0]'
++ xmllint --html --xpath '//select[@name="szlaszolgid"]/option[string-length(@value)!=0]' -
+ PROVIDERS=
++ PREV_COMMAND='PROVIDERS=$(dijnet "control/szamla_search" | xpath '\''//select[@name="szlaszolgid"]/option[string-length(@value)!=0]'\'')'
++ THIS_COMMAND='[ -n "${PROVIDERS}" ]'
+ '[' -n '' ']'
++ PREV_COMMAND='[ -n "${PROVIDERS}" ]'
++ THIS_COMMAND='die "not able to detect service providers"'
+ die 'not able to detect service providers'
+ '[' -z 'not able to detect service providers' ']'
+ echo 'ERROR: not able to detect service providers'
ERROR: not able to detect service providers
pl. 12+:
WGET=/usr/bin/wget
XMLLINT=/usr/bin/xmllint
-32 xmllint --html --xpath "$1" - 2>/dev/null
+32 ${XMLLINT} --html --xpath "$1" - 2>/dev/null
-38 wget \
+38 ${WGET} \
más, a:
INVOICE_DOWNLOAD=$(dijnet "control/szamla_letolt")
INVOICE_NUMBER=$(echo "${INVOICE_DOWNLOAD}" | xpath '//label[@class="title_next_s"]/text()' | sed 's/\//_/g;s/ //g')
TARGET_FOLDER=$(echo "${PROVIDER}/${INVOICE_NUMBER}" | sed 's/ \+/_/g')
Számlaszám-Kiállítás dátuma könyvtárat készít. Hogyan lehetne ez dátum-számlaszám?
- A hozzászóláshoz be kell jelentkezni
for i in $(ls -1) ; do mv $i $(echo $i | awk -F"-" '{ print $2 "-" $1 }') ; done
- A hozzászóláshoz be kell jelentkezni
INVOICE_NUMBER=$(echo "${INVOICE_DOWNLOAD}" | xpath '//label[@class="title_next_s"]/text()' | sed 's/\//_/g;s/ //g;s/\(.*\)-\(.*\)/\2-\1/g')
- A hozzászóláshoz be kell jelentkezni
Korábban nem tudom hogy volt, de most a "title_next_s" a számlaszámot és a Fizetési határidő-t tartalmazza egyben, vagyis a "Fizetendő számlák >>" utáni részt az oldal felső sorából.
A Kiállítás dátuma a <label class="">Kiállítás dátuma:</label> utáni első <div class="xt_field">2020.01.06</div> class-ból szedhető ki. Ehhez én most hülye vagyok, de nekem is jobban tetszene a "Számlaszám-Kiállítás" dátuma könyvtárnév. Ehhez még a számlaszámot is külön ki kellene szedni a "Számlaszám:" label után...
Valaki esetleg? :-)
- A hozzászóláshoz be kell jelentkezni
Ha nem is a legszebb megoldással, de működik!
A 92-93 sorokat cseréltem le 3 módosított sorra:
# INVOICE_NUMBER=$(echo "${INVOICE_DOWNLOAD}" | xpath '//label[@class="title_next_s"]/text()' | sed 's/\//_/g;s/ //g')
# TARGET_FOLDER=$(echo "${UTF8_PROVIDER}/${INVOICE_NUMBER}" | sed 's/ \+/_/g;s/\.\//\//g')
INVOICE_DATE=$(echo "${INVOICE_DOWNLOAD}" | xpath '//div[@id="tab_szamla_letolt"]/table/tr[1]/td/div/table/tr[3]/td[2]/div/text()' | sed 's/[^0-9]*//g')
INVOICE_NUMBER=$(echo "${INVOICE_DOWNLOAD}" | xpath '//div[@id="tab_szamla_letolt"]/table/tr[1]/td/div/table/tr[3]/td[4]/div/text()' | sed 's/\//_/g;s/ //g')
TARGET_FOLDER=$(echo "${UTF8_PROVIDER}/${INVOICE_DATE}_${INVOICE_NUMBER}" | sed 's/ \+/_/g;s/\.\//\//g')
A Dátumot és a Számlaszámot külön szedem ki és a mappa nevét ezekből fűzöm össze.
Ellenőrizzétek légyszi és ha máshol is ok, akkor mehet a kódba @woland ;-)
Köszi!
- A hozzászóláshoz be kell jelentkezni
Nálam működött így is.
- A hozzászóláshoz be kell jelentkezni
köszi, nálam tök jól futott
- A hozzászóláshoz be kell jelentkezni
bravó! :-)
- A hozzászóláshoz be kell jelentkezni
Köszi!
- A hozzászóláshoz be kell jelentkezni
Koszike, megnezem. Mondjuk, en 3-4 havonta mindig le szoktam tolteni, de ezzel elmegy ugy felora, most majd egyszerubb lesz.
--
http://www.micros~1
Rekurzió: lásd rekurzió.
- A hozzászóláshoz be kell jelentkezni
Kedves woland!
Kérhetnék egy kis segítséget, hogyan kéne használnom a Seleniummal (nem ismerem ezt a kiegészítőt)?
Köszönöm Ádám
- A hozzászóláshoz be kell jelentkezni
Köszi! Esetleg szólhatna, ha xmllint nincs telepítve, majd fél órát néztem, hogy akkor most mi a baj.
- A hozzászóláshoz be kell jelentkezni
woland: köszi, szuper! :)
- A hozzászóláshoz be kell jelentkezni
Először is köszönöm! Januárban használtam most megint szerettem volna. De most nem megy.
Már a bejelentkezés elakad, gondolom megváltoztattak valamit.
- A hozzászóláshoz be kell jelentkezni
A login oldalt mindenképp, de lehet, hogy a többiben is módosítottak.
- A hozzászóláshoz be kell jelentkezni
Most látom csak hogy szeptemberbe érkezett a kódhoz egy javitási javaslat, csak még nem fogadta el a tulajdonos.
Este majd átirom és kipróbálom hogy müködik e.
- A hozzászóláshoz be kell jelentkezni
en kiprobaltam, atirtam es mukodik
- A hozzászóláshoz be kell jelentkezni
Hálás köszönet érte!
Ráadásul érdemes lesz egy kis időt szentelnem arra, hogy tanuljak a forráskódjából.
Ja, és elindítottam, nem gyulladt ki a gép, fel se robbant. Azt nem tudom, hogy a jelszavakat gyűjti-e vagy nem, de az kit érdekel... :D
- A hozzászóláshoz be kell jelentkezni
Ezek már megint változtattat. Tudtok rajta változtatni? Én sajna nem értek hozzá.
- A hozzászóláshoz be kell jelentkezni
Köszi a scriptet, pont egy ilyenre volt szükségem! Nagyon szépen működik és mind a pdf-et mind az xml-t letölti csodásan rendezett formában. Csodálatos! Köszi! :)
- A hozzászóláshoz be kell jelentkezni
thx
(Valamit megint változtattak a loginon:)
login...
ERROR: login failed ()
- A hozzászóláshoz be kell jelentkezni
+1 woland megoldására
- A hozzászóláshoz be kell jelentkezni
Ez a díjnet több szempontból szánalmas oldal.
Sok esetben (nem mindig) nem lehet url-ről vagy új ablakban nyitni dolgokat. Ha a számlák listájánál pl megnyitnál többet egymás után új ablakban, akkor ugyanazt az egyet mutatja, és az első kivételével mindegyiknél ott a figyelmeztetés: "Kérjük csak az oldalon található gombokat és hivatkozásokat használja!"
Kedves fejlesztők, talán tessék megtanulni hogy működik egy böngésző, figyelembe venni az urleket, a vissza gombot, és az új lapfülön megnyitás lehetőségét...
- A hozzászóláshoz be kell jelentkezni
sub
- A hozzászóláshoz be kell jelentkezni
-
- A hozzászóláshoz be kell jelentkezni
Hali!
Nekem ma a második számla betöltésekor hasal el.
Azt nem tudtam megállapítani, hogy a számla-listára visszalépéssel van gondja vagy a második számla-oldal betöltésével.
Valaki tesztelte mostanában? Október után?
Köszi!
- A hozzászóláshoz be kell jelentkezni
Nekem sem igazán működik vagy én nem tudom használni... A bejelentkezésen sem jutok túl.
Valaki tudna írni pár sort hogyan kell használni...
THX
- A hozzászóláshoz be kell jelentkezni
Már nem működik. Érzésre, a díjnet letiltotta az ilyetén való hozzáférést.
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Köszi. :(
- A hozzászóláshoz be kell jelentkezni
Nálam működik egy kis módosítás kellett hozzá. Az egyik gond az volt, hogy a szar karakter kódolás miatt a grep nem találta meg hogy a belépés sikeres volt-e vagy sem, a másik gond pedig az volt, hogy megváltozott az a html kód amit sikeres belépés esetén kiírt.
A login rész (nálam 57. sortól) most így néz ki:
printf "login... "
dijnet "login/login_check_password" "vfw_form=login_check_password&username=${USER}&password=${PASS}" \
| iconv -f ISO-8859-2 | grep -q "Bejelentkezési név: <strong>${USER}" || die "login failed"
echo OK
és ezzel működik is (macOS-en használom).
Ami változott: lefut egy ICONV ami 8859-2-ből az rendszer karakterkészletére fordítja, illetve a "<strong>${USER}" keresi a sikeres belépés feltételeként (azthiszem ott </em>${USER}) volt.
- A hozzászóláshoz be kell jelentkezni
Nálam Linuxon az iconv nem kellett, csak a /em lett cserélve strong-ra és megy.
- A hozzászóláshoz be kell jelentkezni
MGy, zárd le lécci a strong taget...
- A hozzászóláshoz be kell jelentkezni
Ezt szépen benéztem. Köszönöm a figyelmeztetést.
- A hozzászóláshoz be kell jelentkezni
Nincs mit.
- A hozzászóláshoz be kell jelentkezni
Valóban:
https://github.com/wolandmaster/dijnet-dump/pull/4/commits/060e5a6fde31…
Így már működik!
Kéne szólni woland-nak, hogy azt a pull request-et tegye már bele...
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
done
- A hozzászóláshoz be kell jelentkezni
thx!
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
[hoppa, nemide]
- A hozzászóláshoz be kell jelentkezni
nálam ez van:
login... OK
query service providers... ERROR: not able to detect service providers
Terminated
pedig van 2 megszűnt és 2 aktív providerem is :( how to debug?
- A hozzászóláshoz be kell jelentkezni
A GitHub-on lehet issue-t nyitni.
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
nekem is ez volt, én ezt a csomagot telepítettem és működik: libxml2-utils
OS: Linux Mint 17.3 Rosa
---
debian -> linuxmint -> osx ;)
- A hozzászóláshoz be kell jelentkezni
Ide is megirom:
Nekem akkor irta ezt, ha nem volt fent xmllint. Debian alapu disztrokban: apt-get install libxml2-utils. Cygwin -ben a libxml2 csomag kell (setup-x86_64 -qP libxml2).
- A hozzászóláshoz be kell jelentkezni
Egyebkent a script elejere odairtam, h kell hozza libxml2-utils... ;-)
- A hozzászóláshoz be kell jelentkezni
Kijavitottam a hozzaszolasokban irt dolgokat es a nyitott issue-kat.
Ha talaltok meg hibat irjatok uj github issue-t, vagy, ha mar a javitas
is megvan, akkor johet a pull request.
- A hozzászóláshoz be kell jelentkezni
Most teszteltem, tökéletesen működik a dijnet számla letöltő script 2020 Januárjában is, köszi woland!
üdv Kepe
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Aktuális volt felébreszteni a szálat, mert a dijnet megint törléssel fenyegetőzik ha nem kap zsetont.
- A hozzászóláshoz be kell jelentkezni
Nem fenyegetőzik, hanem egy szolgáltatást pénzért ad. Ennyi.
- A hozzászóláshoz be kell jelentkezni
Ha telepítve a libxml2-utils csomag Ubuntura de a script mégsem látja, az mitől lehet?
Ha simán terminálban hívom az xmllint-et, akkor ok.
A script viszont belefut a "Dependency missing..." ágba.
- A hozzászóláshoz be kell jelentkezni
Hülye kérdés, de a script is tudja, mi a PATH?
- A hozzászóláshoz be kell jelentkezni
Ide írom, hogy meglegyen, mert nekem kezdőnek gondot okozott:
Ha a script-et sh-val futtatom (sh ./dijnet-dump.sh) akkor nem találja meg sem az xmllint, sem a perl hívásokat. Gondolm a PATH kezeléssel van gondja.
A fenti dependeny hibát is ez okozta nálam és a "query service providers..." rész is ezért szállt el.
Ha bash-ból hívom, akkor megtalálja az útvonalakat és hiba nélkül lefut az egész!
Amikor csak ./dijnet-dump.sh formában indítjuk, akkor mitől függ, hogy melyik shell-ben futtatja? Egyszerűen ami a "$ echo $SHELL"-ben ki van választva?
- A hozzászóláshoz be kell jelentkezni
"Amikor csak ./dijnet-dump.sh formában indítjuk, akkor mitől függ, hogy melyik shell-ben futtatja? Egyszerűen ami a "$ echo $SHELL"-ben ki van választva?"
Hint: shebang. Jelen esetben tehát a /bin/bash hívódik meg a script futtatására.
- A hozzászóláshoz be kell jelentkezni
Esetleg Digi számlákhoz valaki nem akar csinálni ilyet ? :)
- A hozzászóláshoz be kell jelentkezni
Ehhez, meg pár más közüzemi céghez írok api klienst, amivel le tudom tölteni a számlát, illetve tudok óraállást diktálni.
Jelenleg elvan törve a letöltő, mert módosítottak valamit az oldalon, reményeim szerint a héten megjavítom.
- A hozzászóláshoz be kell jelentkezni
Frissitettem nehany dolgot a script-ben, amit mar tobben is kertek.
Ha talaltok vmi hibat irjatok github issue-t.
- A hozzászóláshoz be kell jelentkezni
Köszönöm a bitközség nevében!
- A hozzászóláshoz be kell jelentkezni
...ööö, nem akarom széttrollkodni a dolgot, de egyébként miért szoktátok lementeni ezeket a számlákat? Mi a célja?
Ó, hogy a hatalmas Kublaj kán üssön rajtad, és a házad népén!
- A hozzászóláshoz be kell jelentkezni
Voltaképpen anyámtól tanultam. Mindig elrakta a régi számlákat, 10+ évre visszamenőleg. Nem tudom, valaha is szüksége volt-e bármelyikre is.
De minthogy ez nem papír, hanem e-számla, így elfér. Ha papír lenne, nem hiszem, hogy egy évnél régebbit őrizgetnék, de így meg elvan a gépen.
"Hátha egyszer szükség lesz rá"
http://www.micros~1
Rekurzió: lásd rekurzió.
- A hozzászóláshoz be kell jelentkezni
Nekem épp most azért jött jól, mert fél éve hőszigetelték a (100 lakásos) házunkat, a távfűtés számlán pedig rajta van a teljes ház hőfelhasználása. Mivel le volt töltve a számla, könnyen vissza tudtam nézni, hogy az előző pár évhez képest mennyivel volt kevesebb a hőfelhasználás januárban. (Ez az adat sokkal többet elmond az energetikai változásról, mintha csak a saját lakásom fűtés költségét nézném.)
De érdekes volt visszanézni az elektromos fogyasztás változását hűtőszekrény csere valamint LED-re váltás után is. Ez utóbbiakhoz persze elég lett volna, ha van havonta vezetett mérőállásom, de a ház hőfelhasználását biztos eszembe nem jutott volna havonta írogatni.
- A hozzászóláshoz be kell jelentkezni
Erre elég egy jó PFM alkalmazás, amibe persze be kell pakolni az adatokat. Sajnos a szép emlékű Csekkoló megszüntetésre került (2015-ben indult, Posta-Díjnet közös "gyermek" volt, szerintem kifejezetten jól kitalált és összerakott rendszerként), pedig az pont erre nagyon jó megoldást nyújtott - igaz, a "rezsicsökkentés"-t, mint olyat valahogy nem sikerült látnom a számokban...
- A hozzászóláshoz be kell jelentkezni
Ez mondjuk igaz, bár esetemben kicsit túllövés lenne a célon. A megőrzött számláknak köszönhetően ki tudtam következtetni pár érdekes információt, ami a későbbiekben egy támpont lehet hasonló döntéseknél, de ennél több energiát beletenni nem látom értelmét.
Nem ebbe a topikba tartozik, de akkor már, ezek a következtetések: panelház 16 cm hőszigetelés után 30%-al csökkent a hőfelhasználás, ami sokkal kevesebb, mint amire számítottam volna. Nem közismert, de ezek a panelek úgy épültek, hogy a homlokzati panel elemek tartalmaznak egy 8 centis EPS hőszigetelést, ami ugyan nem hőhíd mentes, de – most hogy rákerült a 16 cm homlokzati, látszik igazán – meglepően sokat szigetel. A hűtőszekrény csere durván havi 25 kW-ot hozott, ez garantáltan megtérülős kategória. A világítás csere mérhetetlen ilyen módon, a havi számlán sokkal inkább meglátszik, ha párral többet vagy kevesebbet megy a mosógép vagy a sütő, szóval a LED-re váltás inkább a lelkemnek megnyugtató.
- A hozzászóláshoz be kell jelentkezni
...jó, de egyrészt a díjnet is őrzi, másrészt meg ha utalással csinálja az ember, akkor a számlakivonaton is ott van a megfizetés ténye (másra nem nagyon lehet szükség). Tehát ha évente egyszer lementi az ember az egy szem xls/pdf/csv fájlt a netbankról, akkor ott van minden. Kereshető, színes, szagos. Úgy nem kell egyesével baszakodni / programot írni a díjnetes számlák beszerzésére.
Ó, hogy a hatalmas Kublaj kán üssön rajtad, és a házad népén!
- A hozzászóláshoz be kell jelentkezni
Abból is látszik a képzavar, hogy a "megfizetés ténye" nincs mindig a számlán. ;)
A számlára szükség lehet, ha
- elszámolod (Könyvelésnél a számlát tudod elszámolni és nem a befizetés tényét. ;))
- tudni szeretnéd, hogy mennyit kellett volna fizetned (hátha téves összeget utaltál)
- részletesen tudni akarod az egyes szolgáltatásokra fordított összeget (egy számla többféle szolgáltatás díját is tartalmazhatja)
- és mint pénzügyi tranzakcióhoz tartozó dokumentum, illik megőrizni (bár kisebb az elévülési idő, mint a banknál)
A szolgáltatókra érvényes elévülési időn belül a Díjnet tárolja a számlákat, amelyek néhány kattintással letölthetők. Ha elszámolod, akkor évente úgy is letöltöd és csatolod a könyveléshez. Ha csak gyűjtöd, akkor is megteheted. Az utóbbi helyett bármikor online megnézheted és letöltheted, ha szükség van rá. A szolgáltatók évente kötelesek elszámolni még akkor is, ha pl. 3 havi számlát bocsátanak ki egyszerre.
Nem online számlabemutatásnál van még egy eset: Ha a számla hamis. Na, ez érdekes jogi helyzetet teremt! Ha befizetted a hamis számlát és ezt igazolni tudod, akkor győztél. ;)
- A hozzászóláshoz be kell jelentkezni
Ok, a nagyja akkor világos, kivéve ezt:
"Abból is látszik a képzavar, hogy a "megfizetés ténye" nincs mindig a számlán. ;)"
Ha ott az én számlaszámom, amiről indult a pénz, valamint a célállomás, meg az elutalt összeg plusz a közleményben az azonosító, akkor szerintem ez csak azt jelentheti, hogy ki lett fizetve a számla. ;) Vagy nem?
Ó, hogy a hatalmas Kublaj kán üssön rajtad, és a házad népén!
- A hozzászóláshoz be kell jelentkezni
Nem.
Olvasd végig figyelmesen a felsorolást!
Fizethetsz hibás összeget is, pl. 10000 helyett csak 1000 megy az utalással.
Az azonosító megint egy buktató lehet. Van fix díjas szolgáltatás, ahol lehet állandó azonosító. A többinél meg ügyfelenként és számlánként más az azonosító. Az utóbbit számla nélkül ki sem tudod találni.
A pontos összeg még fix összegnél sem biztos. Hibázhat a szolgáltató rendszere is, "előkerülhet" valamilyen "rejtett" tartozás is. ;)
- A hozzászóláshoz be kell jelentkezni
Rokon 90-es években hitelből házat épített. Idővel kifizette, a banki jelzálog lekerült róla, minden földhivatali bejegyzés rendeződött. Minden csekket eltett. Közel 20 évvel később az OTP-nek az EOS faktora elkezdett ugatni a magas lóról meg fenyegetőzni, hogy kb fél milliós tartozás van még ebből a hitelből és rendezzük. Először ráhozta a frászt a rokonra. Aztán kapcsolt, hogy megvannak a csekkek. Előkereste és elküldte őket az anyjukba. Azóta csendben vannak, de egy elnézést, adminisztrációs hiba/hülyék voltunk semmi nem jött vissza. Azért okozott neki pár gyomorgörcsös hetet. Papírország, basszus, papírország ez még mindig.
Ha papírral nem tudod igazolni az igazadat, átvernek. Aztán ha igazoltad, jön a jaj a számítógépben rosszul volt c. duma. Jártam így a Fibernettel is. Tróger banda volt az is.
Én a papírt nem teszem el, mert 2x akkora lakóterület kellene a végén, de ledarálás előtt lefényképezem és mindet archiválom.
- A hozzászóláshoz be kell jelentkezni
5 év alatt elévült a követelés, igazából erre is hivatkozhatott volna gyomorideg helyett.
Nálam ilyen próbálkozás talán egy vagy kettő volt, de soha nem kellett még csekkeket keresgélnem, küldözgetnem. Eddig elég volt a banki kivonat másolata (pdf), vagy csak szimplán emailben jelezni az utalások pontos dátumát, hogy hol keressék a pénzület. (Jó, persze húsz évvel ezelőtt ez még más lehetett.)
A legdurvább a helyi önkormányzat teljesen inkompetens adóügyi előadója, akinek nagyon nehezére esett felfognia, hogy egy iparűzési adó befizetésénél neki elég a befizetőazonosítót és az összeget néznie, teljesen lényegtelen BÁRMILYEN szempontból, hogy a küldő számlaszám kinek a nevén van. Konkrétan: a feleségem nevén van a számla, közösen használjuk, és az előadó hölgy nem tudta hova lekönyvelni a beérkező összeget, mert nem tudta kilogikázni, hogy a szmlatulajdonos "Mászógépné" az nyilván az adóalany "Mászógép" hites felesége. Ráadásul, ismétlem, ha azt "XY Jani" számlájáról fizetik be, az adózási szempontból továbbra is mindegy. Ők is mindenféle papírokat akartak, de végül elnézést kértek, amikor valaki elmagyarázta neki, hogy mit basz el.
Nekem pont az a véleményem, hogy ez a fenenagy digitalizáció igenis egyértelműbbé tette az efféle ügyintézéseket, mindenféle papírfecnik keresgélése nélkül is. :)
Ó, hogy a hatalmas Kublaj kán üssön rajtad, és a házad népén!
- A hozzászóláshoz be kell jelentkezni
Az elévülést köszi. Futottam egy kört a neten. Lejött a lényeg, résen kell lenni. Most már megvan a "játszma".
- A hozzászóláshoz be kell jelentkezni
1- nagy köszönet a munkádért
2- bug report:
- Ha egy számlaszolgáltató (pl DBH Zrt) több szolgáltató számlázását is ellátja (pl FV, NCSM, NKHV) akkor háromszorosan tölti le a számlákat
- cygwin install esetén a szintaxisból hiányzik a vessző: setup-x86_64.exe -qP wget,xxd,libxml2,pv
"The only valid measurement of code quality: WTFs/min"
- A hozzászóláshoz be kell jelentkezni
Az INVOICE_PROVIDER_ALIAS-nak szerintem INVOICE_ISSUER_ALIAS-nak kellene lennie...mert ha jól értelmezem ez az érték nem más, mint a ekonto/control/regszolg_list-en megadott "megjelenési név" ami a INVOICE_ISSUER_ID-nak a user defined/readable formája.
Tippre emiatt pakolja bele a INVOICE_PROVIDER könyvtárba az összes, azonos ISSUER-hez tartozó számlát.
Ja, és a https://www.dijnet.hu/ekonto/control/szamla_search_submit oldalon a Díjnet is elbökte mert a "Számlakibocsátói azonosító" oszlop, valójában a user által megadott INVOICE_PROVIDERISSUER_ALIAS...nem pedig a fejléc által sugallt INVOICE_ISSUER_ID.
Ha jobban érteném mit csinál script, javítást is küldtem volna, de egyelőre ennyire tellett tőlem :/
Hátha valaki előrébb jut vele.
"The only valid measurement of code quality: WTFs/min"
- A hozzászóláshoz be kell jelentkezni
Valamit megint baszakodott a dijnet, úgy nézem :(
login... HTTP/1.1 406 Not Acceptable
Date: Thu, 11 Aug 2022 08:47:21 GMT
Content-Type: text/html
Content-Length: 156
Connection: close
Server: HTTP-Server
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: strict-origin
Strict-Transport-Security: max-age=31536000
Front-End-Https: on
Set-Cookie: HAPROXY_SESSION=as41|YvTCH; path=/; HttpOnly; Secure
ERROR: login failed ()
http://www.micros~1
Rekurzió: lásd rekurzió.
- A hozzászóláshoz be kell jelentkezni
Szintén zenész.
- A hozzászóláshoz be kell jelentkezni
$ curl -qs 'https://www.dijnet.hu/ekonto/login/login_check_ajax' -H 'Accept: application/json, text/javascript, */*; q=0.01' -H 'Accept-Language: en-US,en;q=0.9' -H 'Cache-Control: no-cache' -H 'Connection: keep-alive' -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' -H 'Cookie: _gcl_au=1.1.1673352902.1660242445; lang=hu; _ga=GA1.2.620560328.1660242445; _gid=GA1.2.761682434.1660242445; _omappvp=Mjd3u9Kuq3NuCECyhA8QqkGYpjrG9CsLPZArPX9CJuiKXFEecYMLnL76UJm9ubD2Kk2a8bxKn0kdeYT5RnyjemQSpdFBbhPB; _omappvs=1660242445351; HAPROXY_SESSION=as51|YvVKE' -H 'Origin: https://www.dijnet.hu' -H 'Pragma: no-cache' -H 'Referer: https://www.dijnet.hu/' -H 'Sec-Fetch-Dest: empty' -H 'Sec-Fetch-Mode: cors' -H 'Sec-Fetch-Site: same-origin' -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36' -H 'X-Requested-With: XMLHttpRequest' -H 'sec-ch-ua: "Chromium";v="104", " Not A;Brand";v="99", "Google Chrome";v="104"' -H 'sec-ch-ua-mobile: ?0' -H 'sec-ch-ua-platform: "Windows"' --data-raw 'username=f&password=g' --compressed | jq '.'
{
"success": false,
"error": "Sikertelen bejelentkez�s. Ellen�rizze adatait �s pr�b�lja �jra!"
}
ez talan segit:
- A hozzászóláshoz be kell jelentkezni
Igen, kösz, közben a githubon javítva is lett.
user-agent kellett neki
http://www.micros~1
Rekurzió: lásd rekurzió.
- A hozzászóláshoz be kell jelentkezni
megáll a PROVIDER_JSON olvasásásnál?
+ IFS='
'
+ INVOICES=($(sed -En "s/.*clickSzamlaGTM\('szamla_select', ([0-9]+).*/\1/p" <<<"${INVOICES_PAGE}"))
++ sed -En 's/.*clickSzamlaGTM\('\''szamla_select'\'', ([0-9]+).*/\1/p'
+ progress
++ sed 's/ ()$//'
+ local 'PROVIDER_NAME=MVM Next - Foldgaz (xxxx)'
+ type pv
+ awk -v 'name=MVM Next - Foldgaz (xxxx)' -v total=0 '{printf "\033[2K\rdownload \"%s\", total: %d, current: %d", name, total, $1; fflush(stdout)}
END {if (NR>0) printf "\n"}'
+ read -r PROVIDER_JSON
+ rm /home/user/.tmp/tmp.PESGDcRXIP
- A hozzászóláshoz be kell jelentkezni
Nálam is megállt. De sajnos nem látom át a kódod.
- A hozzászóláshoz be kell jelentkezni
Ebbe a ciklusba nem lép be. Pár perces debuggolás után szerintem ez a patch jó lesz:
diff --git a/dijnet-dump.sh b/dijnet-dump.sh
index eb50322..16c90cc 100755
--- a/dijnet-dump.sh
+++ b/dijnet-dump.sh
@@ -111,7 +111,7 @@ unaccent <<<"${PROVIDERS_PAGE}" | sed -En 's/.*var ropts = \[(.*)\];.*/\1/p' | s
INVOICES_PAGE=$(dijnet "ekonto/control/szamla_search_submit" "vfw_form=szamla_search_submit" \
"&vfw_coll=szamla_search_params®szolgid=${PROVIDER["regszolgid"]}" \
"&datumtol=$(sed 's/\./-/g' <<<"${FROM_DATE}")&datumig=$(sed 's/\./-/g' <<<"${TILL_DATE}")")
- IFS=$'\n' INVOICES=($(sed -En "s/.*clickSzamlaGTM\('szamla_select', ([0-9]+).*/\1/p" <<<"${INVOICES_PAGE}"))
+ IFS=$'\n' INVOICES=($(sed -En "s/.*clickSzamla\('szamla_select', ([0-9]+).*/\1/p" <<<"${INVOICES_PAGE}"))
for INVOICE_INDEX in ${INVOICES[@]}; do
INVOICE_PAGE=$(dijnet "ekonto/control/szamla_select" "vfw_coll=szamla_list&vfw_rowid=${INVOICE_INDEX}")
Ha jól látom, a clickSzamlaGTM függvény neve változott clickSzamla-ra.
- A hozzászóláshoz be kell jelentkezni
Köszi a fixet! Csináltam PR-et hozzá: https://github.com/wolandmaster/dijnet-dump/pull/43
- A hozzászóláshoz be kell jelentkezni
Ah, köszi. Nem vagyok nagy github-varázsló, reggel most lusta voltam megnézni, hogy is kell.
- A hozzászóláshoz be kell jelentkezni
Semmi gond, én meg bár pár napja/hete már láttam, hogy nem jönnek le a díjnet számlák nem volt kedvem utána menni mi a gond, vártam, hátha valaki megoldja. Hát megoldotta :) Nekem a github-os rész volt pár perc kipróbálással együtt :)
- A hozzászóláshoz be kell jelentkezni
Köszi a javítást, be is engedtem.
- A hozzászóláshoz be kell jelentkezni
Bocs, githup update után jó
http://www.micros~1
Rekurzió: lásd rekurzió.
- A hozzászóláshoz be kell jelentkezni
Ma reggel próbáltam ismét letölteni a számlákat a dijnet-dump-pal, de nem engedett belépni. Egy éve használtam utoljára, akkor hibátlanul működött. Van akinél megy?
- A hozzászóláshoz be kell jelentkezni
Megoldodott, jelszócserével. Az előző jelszóban lévő karaktereket nem mind kezelte le a dijnet-dump.
- A hozzászóláshoz be kell jelentkezni