Frage

Ich schrieb ein Perl-Skript vor einer Weile, die in meinem Online-Banking angemeldet und per E-Mail mir meine Balance und eine Mini-Aussage jeden Tag. Ich fand es sehr nützlich für meine Finanzen zu verfolgen. Das einzige Problem ist, dass ich schrieb es nur mit Perl und curl und es war ziemlich kompliziert und schwer zu pflegen. Nach einigen Fällen von meiner Bank ändern ihre Webseite habe ich von dem Debuggen es satt zu halten, auf dem Laufenden.

Also, was ist der beste Weg, ein solches Programm so zu schreiben, dass es einfach zu halten? Ich möchte eine schöne ausgereifte Version entweder Perl oder Java schreiben, die einfach sein werden, zu aktualisieren, wenn die Bank zwangsläufig mit ihrer Website Geige.

War es hilfreich?

Lösung

In Perl, so etwas wie WWW::Mechanize bereits das Skript einfacher machen können und robust, weil es HTML-Formulare in früheren Antworten von der Website zu finden. Sie können in diesen Formen füllen einen neuen Antrag vorzubereiten. Zum Beispiel:

my $mech = WWW::Mechanize->new();
$mech->get($url);
$mech->submit_form(
    form_number => 1,
    fields      => { password => $password },
);
die unless ($mech->success);

Andere Tipps

Eine Kombination aus WWW :: Mechanize und Web :: Scraper die beiden Werkzeuge, die mich am meisten produktiv zu machen. Theres einen schönen Artikel über diese Kombination bei der katalysierte .org

Wenn ich Ihnen einen Rat geben, wäre es zu benutzen XPath für alle Ihre Schaben Bedürfnisse. Vermeiden Sie reguläre Ausdrücke.

Hmm, gerade gefunden

Finance :: Bank :: Natwest

Welche ist ein Perl-Modul speziell für meine Bank! War das nicht erwartet, dass es ganz so einfach zu sein.

Viele Banken veröffentlichen ihre Daten in einem Standardformat, die üblicherweise durch persönliche Finanz-Pakete wie MS Money oder Quicken zum Download Transaktionsinformationen verwendet wird. Sie könnten für diesen Haken und Download gleich aussehen API verwenden und analysieren dann die Daten auf Ihrem Ende (zB Parse-Excel-Dokumente mit Tabelle :: ParseExcel und Quicken docs mit Finanzen :: QIF ).

Edit (Antwort auf Kommentar): Haben Sie darüber nachgedacht, Ihre Bank kontaktieren und sie zu fragen, wie Sie programmatisch in Ihrem Konto anmelden, um kann die Finanzdaten zum Download? Viele / die meisten Banken haben eine API für diese (die Quicken usw. Gebrauch machen, wie oben beschrieben).

Es gibt eine zur Zeit auf dem aktuellen Stand Ruby-Implementierung hier:

http://github.com/warm/NatWoogle

Verwenden Sie Perl und die Bahn :: Schaber Paket: Link-Text

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top