On 2020-07-16 09:26, Justus Pendleton wrote: I'm somewhat amused that you don't have time to spend five minutes once a month downloading CSV files but you have the many, many hours required to investigate, implement, and write about your alternative that saves five minutes a month :)
If we were analyzing things on a strictly "ROI" basis, I would acknowledge your point, as the statement part is not so time consuming as the transactions and the whole rest of the process, and therefore based on such criteria we would certainly be getting into "diminishing returns" territory. However I stopped some years ago using such criteria. I do things now because I want to. I enjoy learning new tools and expanding my skillset, and as I mentioned in OP I expect to be able to automate away some other drudgery somewhere else in my life at some point using Selenuim WebDriver. I also detest drudgery. I do acknowledge that a different set of criteria and personal proclivities will almost certainly result in different conclusions. Put differently, as a friend told me in IRC recently, I am "always nerding." :D
Your approach won't work with any institution that has 2FA and I can't imagine not having 2FA on my financial accounts.
I could tell you that my bank login uses the last 4(8?) of debit card as a secondary auth (as an alternative to receiving an SMS), but that is only one particular bank and may even change in future, so overall your point still stands. Especially with banks, the whole security thing does make it much more difficult. So here I plan to do the 90% thing. And by that I mean, I will be sitting at my computer while this runs. So I can see what is happening, notice if it breaks, etc. I plan to have Selenium open the page and then wait while I log in using KeePassXC Auto Type feature. This already works very well (including the secondary last x of debit card) and also takes care of the security issue of storing sensitive credentials. This is one idea I got from the guy's article in OP. Have Selenium wait for me to log in, look for some element on the logged in page like "Hi, TRS-80!" or whatever... And then continue. As an aside I just sat down this morning to implement this and realized I want Selenium to open the browser instance on certain workspace. I use i3 wm, so this is very easy as there are Python bindings for the i3-ipc interface. So all from within one Python script I should be largely able to automate the whole process, including window management if needed.
Also, having spent many years dealing with substantial Selenium test suites, they are extremely brittle and required a surprising amount of ongoing maintenance. Failures due to timeouts from some DOM element taking too long to arrive, changes in the DOM breaking everything, etc. For a small personal project those may not be as frustrating as they were for a commercial software effort, though.
I appreciate the feedback from someone who has been there. This certainly seems to be the general consensus. Right now I am new to it and all starry eyed, perhaps after some time I will come to same conclusions and throw in the towel. From the little reading I have done so far, it does seem like (at least the "waiting for DOM element" thing) have been improved quite a lot in the meantime. I don't know how long it has been since you used the tools, maybe it does work better now or quite possibly I am simply an over optimistic noob at this point. :) However something I have been thinking about (already for quite some time, at least 1-2 years) is that my primary bank is a smaller local one, and as far as I can tell have not (at least visually) changed the website much if at all in that time. Of course I have not been analyzing the underlying DOM during this time (until now). But the feeling I get is that this is more of a problem the larger the bank? Where perhaps they have whole teams of "front end" people just looking for something to do... I guess we will find out. :) TRS-80 -- You received this message because you are subscribed to the Google Groups "Beancount" group. To unsubscribe from this group and stop receiving emails from it, send an email to beancount+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/beancount/426a0fb157d1a82a02684328da13e81a%40isnotmyreal.name.