I didn't include this in my original reply but today is May 1st.
Since GnuCash involves manually entering in transactions it's easy to think that'll take a ton of time.
I just timed myself and it took 5 minutes to input everything for April 2022 into GnuCash. This includes all income and expenses (personal and business). I'm not even using GnuCash's automated feature for recurring payments too, so that 5 minutes includes manually inputting various subscription costs (I don't have a lot). This also includes a bunch of business related things (estimated tax information, a few income streams in their own "GnuCash Accounts" and a few expense streams in their own "GnuCash Accounts"). I do this by opening GnuCash and my bank's dashboard side by side and then running through last month's entries.
Most banks support exporting CSVs and I'm 100% certain I could write a Python script to parse this and auto-import things into GnuCash but since the bank item descriptions for the same transactions change over time I don't want to risk it. The 1 hour per year of manually entering numbers (I copy paste the dollar amounts to reduce human error btw) gives me more confidence than writing that script. I also know to make that script robust enough to consider using it for real in a way that wouldn't require manually checking it would be quite involved. As soon as the script's results require manually checking it for accuracy then you might as well have input things manually without the script.