Hilfe
abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 

Postbox-Sammeldownload ? codipodo !

dg2210
Legende
6.228 Beiträge

Eine Funktion, die ich bei der comdirext seit langem vermisse, ist der Sammeldownload von Dokumenten aus der Postbox.

 

Ich habe mir deswegen ein kleines tool gebastelt, mit ich ich vollautomatisch die PDF-Dokumente aus meiner Postbox abholen kann (zumindest die Dokumente auf der ersten Seite der Postbox).

 

Ihr findet die aktuelle Version am Ende dieses beitrags und unter

https://github.com/dg2210/comdirect/blob/master/codipodo.rb

 

Es ist sofort einsatzbereit, nachdem ihr Kundennummer und PIN eingetragen habt.

 

Systemvorrausetzungen:

irgendetwas PC- oder Workstation-artiges mit halbwegs aktuellem Ruby-Interpreter (z. B. Version 2.0)  und dazugehöriger "mechanize"-Bibliothek (Ergänzung vom 07.06.18: OpenSUSE-Anwender schalten bitte per YaST das Repository Ruby Extensions (openSUSE_Leap_42.3) ein um die "mechanize"-Bibliothek installieren zu können)

 

Aufruf

ruby codipodo.rb

Das Programm erwartet keine Parameter und sollte regemässig automatisch, z.B. täglich in den frühen Morgenstunden einmal aufgerufen werden.

 

FAQ

F: Warum Ruby? Warum "mechanize" ?

A: Ich mag es nicht, wenn ich meine Zugangsdaten einem Programm anvertrauen muss, das ich nicht verstehe. Darum war mein Hauptziel, ein kurzes, auditierbares, auch von Nicht-Experten zu verstehendes Werkzeug zu schaffen, das möglichst plattformunabhängig ist. Die "mechanize"-Bibliothek (zusammen mit dem ruby-Interpreter) erfüllt diese Anforderungen.

 

F: Was macht codipodo?

A:  Bis Zeile 31 werden ein paar Konstanten definiert: die festen URLs der comdirect und der Ordner, in den die Dokumente gespeichert werden sollten (Voreinstellung: comdirect-postbox).

In Zeile 33 wird ein neuer Webbrowser gestartet und in Zeile 34 die Voreinstellung für den Umgang mit PDFs auf "Download" geändert.

Ab Zeile 36 gehen wir auf die Login-Seite, füllen das Formular aus und schicken es ein Zeile 41 ab.

 

Falls wir nicht im Persönlichen Bereich angekommen sind, beenden wir die Sache, anderfalls wechseln wir zur Postbox (Zeile 49)

 

In Zeile 53-56 klicken wir auf alle links, die den Text "dokumentabruf" in ihrer URL enthalten. Diese werden automatisch gespeichert (s.o.)

 

F: Warum lädt das codipodo nur PDF-Dateien?

A: Bei der comdirect sind Wertpapier/Ordermitteilungen als PDF hinterlegt, termingebundene Mitteilungen und Werbung aber nicht. Das tool kümmert sich nur PDFs, weil man bei den anderen Mitteilungen noch auf ein paar links klicken müsse und das tool nicht erkennen kann, ob damit evtl. unerwünsche Aktionen ausgelöst werden.

 

F: Warum lädt codipodo nur die erste Seite der Postbox?

A: Die "nächste Seite" Funktion der Postbox ist kein normaler link, sondern ein Stück schwarzer Javscriptmagie. Beim unvorsichtigen Umgang damit besteht die Gefahr, dass das tool in eine Endlosschleife gerät und Millionen von Anfragen an die comdirect schickt, was von deren System möglicherweise als dos-Attacke missverstanden werdenn kann. So wie es jetzt ist, terminiert das Programm nach spätestens 20 Downloads. 

 

F: Gibt es support?

A: Falls genügend Nachfrage besteht, werde ich einen kostenpflichtigen Support anbieten.

 

 

# COmDIrect-POstfach-DOwnloader: codipodo
# Dieses Programm holt die PDF-Dokumente der ersten Seite der Postbox
# und legt sie im Ausgabeverzeichenis (s.u.) ab

# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

require 'mechanize'

# LOGINDATEN, bitte anpassen
ID = "1234578"  # Comdirect-Zugangsnummer
PIN = "123456"  # Comdirect-PIN

# Ablageort der heruntergeladenen Dateien
DIRECTORY="comdirect-postbox"

# Feste URLs der Comdirect
LOGINURL="https://kunde.comdirect.de/lp/wt/login"
LOGOUTURL="https://kunde.comdirect.de/lp/wt/logout"
POSTBOX_URL="https://kunde.comdirect.de/itx/posteingangsuche"
SUCCESSPAGE="https://kunde.comdirect.de/itx/persoenlicherbereich/anzeigen?execution=e1s1"

  @agent = Mechanize.new
  @agent.pluggable_parser.pdf = Mechanize::DirectorySaver.save_to(DIRECTORY, :overwrite => true)
  
  @agent.get(LOGINURL) do |page|
     login_result = page.form_with(:name => 'login') do |log|
       log.add_field!("loginAction", "loginAction")
       log.param1= ID
       log.param3 = PIN
     end.click_button

     # Sind wir auf der richtigen Seite gelandet?"
     if login_result.uri.to_s != SUCCESSPAGE
       puts "Login fehlgeschlagen,  aktuelle URL: #{login_result.uri.to_s}"
       break
     end

    @agent.get(POSTBOX_URL)

    # Nur Eintraege, deren URL "/dokumentenabruf/" enthält, abholen,
    # d.h. Werbung oder andere nicht-downloadbare Elemente überspringen
    @agent.page.links_with(:href => /dokumentenabruf/).each do |link|
      link.click
    end
  end
  @agent.get(LOGOUTURL)

 

36 ANTWORTEN

haxo
Mentor ★★★
3.475 Beiträge

@SMT_Erik , der erste Kommentar dazu ist schon drei Jahre alt.

 

In der Zwischenzeit gab's die Mondlandung, den Tesla 3 und die Photo-Tan.

 

Wäre es vielleicht nicht mal langsam an der Zeit dieses alberne, stückweise Heruntergelade von immer mehr, und mehr, und mehr Dokumenten auch für den Otto-Normal-comdirect-Kunden vermeidbar zu machen?

 

Danach könnt ihr ja wieder mit bunten Quadraten spielen Katze (frustriert)

 

hx.

><p><em><font face= "comic sans ms,sans-serif" size= "5">Signatur</font ></em> </p>

Tarulia
Mentor ★
1.112 Beiträge

Naja, grundsätzlich ist die PostBox ja ein dauerhafter Datenträger, das heißt wenn man es nicht für persönliche Backup Zwecke nutzt, muss man eigentlich gar nix runterladen 😉

 

@dg2210 hier meine Basteleien von gestern Abend (und ein bisschen heute): https://github.com/mihawk90/comdirect/blob/subdirs-by-date/codipodo.rb

TC_Hessen
Experte
80 Beiträge

Seit Redmine habe ich gerlernt, Ruby zu hassen 😉

SMT_Jan-Ove
ehemaliger Mitarbeiter
4.279 Beiträge

Hallo @haxo,

 

wäre sicherlich wünschenswert. Der Wunsch wurde schon mehrfach eingereicht, aber bisher ist es leider nie zu einer Umsetzung gekommen. Ganz vom Tisch scheint das Thema aber auch noch nicht zu sein.

 

Beste Grüße

Jan-Ove

haxo
Mentor ★★★
3.475 Beiträge

@SMT_Jan-Ove  schrieb:

Hallo @haxo,

 

wäre sicherlich wünschenswert. Der Wunsch wurde schon mehrfach eingereicht, aber bisher ist es leider nie zu einer Umsetzung gekommen. Ganz vom Tisch scheint das Thema aber auch noch nicht zu sein.

 

Beste Grüße

Jan-Ove


@SMT_Jan-Ove , dann wollen wir das Thema mal wieder anschieben, jetzt wo alle SMTs aus der Sommerfrische gekommen sind Katze (überglücklich)

 

->Free Postbox!

 

hx.

><p><em><font face= "comic sans ms,sans-serif" size= "5">Signatur</font ></em> </p>

ehemaliger Nutzer
ohne Rang
0 Beiträge

Hallo @haxo,

 

ich werde das Thema noch einmal platzieren. Versprechen kann ich aber nix. 

 

Viele Grüße

Mario

eckhardschnell
Experte ★★★
663 Beiträge

Hallo @ehemaliger Nutzer ,

wenn das wieder abschlägig beschieden wird bekomme ich die Krise und verliere den glauben daran das einer von den zuständigen Herren/Damen/Diversen das Problem auch nur ansatzweise verstanden hat oder einfach sein comdirect Depot nicht intensiv benutzt damit er das Problem sieht.

Bei diesem Thema habt Ihr  den Fokus auf die Benutzerbedürfnisse komplett verloren.

Kannst Du mir einen guten Grund nennen warum wir immer wieder euch hilfreiche Funktionen vorschlagen sollen und es so gut wie nie zu einer Umsetzung kommt.

Was habt Ihr denn in den letzten zwei Jahren so nach Kundenvorschlägen umgesetzt?

Ein Liste müsste es doch geben. Vielleicht sehe ich das ganze ja zu schwarz und deswegen währe hier transparenz doch nicht schlecht um die Stimmung zu heben.

 

Grüße

Eckhard

ehemaliger Nutzer
ohne Rang
0 Beiträge

Hallo @eckhardschnell,

 

ich kann deinen Unmut verstehen. Eine Liste aller umgesetzten Vorschläge kann ich dir nicht bieten. Ich kann dir aber versichern, dass wir eure Ideen weitergeben und es auch zu Umsetzungen kommt. 

 

Viele Grüße

Mario

dsmr
Autor ★★★
65 Beiträge

Mit PSD2 und der neuen TAN-Erfordernis zum Zugriff auf die Postbox ist codipodo wohl gestorben. Ich fand es ja schon bisher eine Zumutung, aber jetzt heißt es tatsächlich wieder, jedes Dokument einzeln runterladen. Es gibt Augenblicke, da denke ich über die 14,90 / Quartal für den Postversand nach Smiley (traurig)

dg2210
Legende
6.228 Beiträge

@dsmr  schrieb:

Mit PSD2 und der neuen TAN-Erfordernis zum Zugriff auf die Postbox ist codipodo wohl gestorben. I


Ja, codidpo ist tot.