[megoldva] dijnet.hu -ról az összes régi számla letöltése egyszerűen

 ( Summer6529 | 2015. január 15., csütörtök - 22:37 )

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)

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

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.

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?

hmm, megoldottam seleniummal.

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>

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 dolgozó népet szolgálom... :-)

Sziasztok,

ha még megvan, én kérném szépen a scripteket.

Köszi,
üdv,
Gergő

Érdemes volna githubra felrakni, nem?
--
Gábriel Ákos
http://ixenit.com

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:

http://pastebin.com/KAESSePK

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/ )

Még annyit tennék hozzá, hogy nálam a Firefoxban az Electrolysis-t ki kellett kapcsolnom, mert azzal elhasalt a Selenium.

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 link=LetöltĂ©s cseréje link=Letöltés-re
- 51. sor pause-t én feljebb vettem 2000-re

Gergő

Ezek szerint az az ID változik.
Az ékezet szerintem nálam kutyulódott el mikor pastebinre raktam.

A cookie-t lementheted a bongeszoben is, es atadhatod azt a wgetnek.

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.

Firefoxban a cookiet konnyu megszerezni. Adott oldalon a Tools menu Page Info almenut kivalasztod, a megjeleno ablakban Security ful, majd View Cookies.

sub

Köszi a hozzájárulást mindenkinek, hatalmas segítség volt, pedig nem értek ám a webfejlesztéshez... :)

Osszedobtam egy script-et, ami lementi az osszes dijnet-es szamlat:
https://github.com/wolandmaster/dijnet-dump/blob/master/dijnet-dump.sh

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 :)

+1
thx

zsenialis, thx!

Ezer köszönet!
------------------------
{0} ok boto
boto ?

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?)

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.

Köszi! Hasznos!

--
trey @ gépház

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) آكوش

Marmint 80-ra gondoltal. Evente 991 Ft-ot kell fizetned nehany MB tarhelyert.

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 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.

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.)

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

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."

Szép munka! Gratulálok

köszi, ez nagyon hasznos!
tipp: A password argumentum lehetne opció, és ha nincs akkor 'read' kérné be.

bugreport: "Csat. M&ucirc;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)

Kössz. Remekül funkcionál...

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.

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

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!

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!

Koszi, igy lejott nekem is!

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?

for i in $(ls -1) ; do mv $i $(echo $i | awk -F"-" '{ print $2 "-" $1 }') ; done

köszi, nálam tök jól futott

bravó! :-)

Köszi!

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ó.

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

Köszi! Esetleg szólhatna, ha xmllint nincs telepítve, majd fél órát néztem, hogy akkor most mi a baj.

woland: köszi, szuper! :)

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 login oldalt mindenképp, de lehet, hogy a többiben is módosítottak.

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.

en kiprobaltam, atirtam es mukodik

+1 woland megoldására

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...

sub

-

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!

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

Már nem működik. Érzésre, a díjnet letiltotta az ilyetén való hozzáférést.

--
trey @ gépház

Köszi. :(

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.

Nálam Linuxon az iconv nem kellett, csak a /em lett cserélve strong-ra és megy.

MGy, zárd le lécci a strong taget...

Ezt szépen benéztem. Köszönöm a figyelmeztetést.

Nincs mit.

Valóban:

https://github.com/wolandmaster/dijnet-dump/pull/4/commits/060e5a6fde316fe0f87c9129b2cbdce8675da06f

Í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

done

thx!

--
trey @ gépház

[hoppa, nemide]