{"id":26232556,"url":"https://github.com/bulletmark/gnucash-asx-fetch","last_synced_at":"2025-04-22T10:41:52.788Z","repository":{"id":44381756,"uuid":"328333091","full_name":"bulletmark/gnucash-asx-fetch","owner":"bulletmark","description":"Utility to fetch and add current ASX prices to one or more gnucash XML files.","archived":false,"fork":false,"pushed_at":"2025-03-05T10:05:18.000Z","size":39,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-13T14:51:02.995Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bulletmark.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-01-10T08:04:48.000Z","updated_at":"2025-03-05T10:05:17.000Z","dependencies_parsed_at":"2022-07-14T13:20:59.225Z","dependency_job_id":null,"html_url":"https://github.com/bulletmark/gnucash-asx-fetch","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bulletmark%2Fgnucash-asx-fetch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bulletmark%2Fgnucash-asx-fetch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bulletmark%2Fgnucash-asx-fetch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bulletmark%2Fgnucash-asx-fetch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bulletmark","download_url":"https://codeload.github.com/bulletmark/gnucash-asx-fetch/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250222158,"owners_count":21394827,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-13T00:37:29.848Z","updated_at":"2025-04-22T10:41:52.591Z","avatar_url":"https://github.com/bulletmark.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## GNUCASH-ASX-FETCH\n[![PyPi](https://img.shields.io/pypi/v/gnucash-asx-fetch)](https://pypi.org/project/gnucash-asx-fetch/)\n[![AUR](https://img.shields.io/aur/version/gnucash-asx-fetch)](https://aur.archlinux.org/packages/gnucash-asx-fetch/)\n\nThis is a command line utility to fetch and update\n[ASX](https://asx.com.au) share prices to one or more\n[GnuCash](https://www.gnucash.org/) XML files. It takes multiple path\narguments: one of more GnuCash files, or directories. If a directory is\ngiven then it updates all the GnuCash files in that directory. It can\nnot update any GnuCash files that are currently open so will generate an\nerror message for those files. A new price entry is added for each ASX\nshare existing in the file each time you run it. Open the GnuCash price\ndatabase editor for a file to view, edit, or remove the new entries\nadded.\n\nFor example, to update the share prices of all the ASX shares in all the\nGnuCash files in the current directory type:\n\n```\n$ gnucash-asx-fetch .\n```\n\n:warning: This utility overwrites your GnuCash file[s] so be sure to save\ncopies at least the first time you try using it.\n\nNote it only updates GnuCash XML files, not GnuCash sqlite files. It\nsilently skips GnuCash backup and log files.\nThis utility should work on any modern Linux platform and has been\ndeveloped against GnuCash v4.4.\n\nSee the latest documentation and code at\nhttps://github.com/bulletmark/gnucash-asx-fetch.\n\n## MOTIVATION\n\nGnuCash uses the [Finance::Quote](https://github.com/finance-quote)\nmodule to update share prices but I have found it fragile over the short\ntime I have been using GnuCash. E.g. At the time I created this utility,\nASX price fetches via [Finance::Quote](https://github.com/finance-quote)\nhave not worked for more than 3 months as per [this\nbug](https://github.com/finance-quote/finance-quote/issues/166).\n\nFetching prices from [ASX](https://asx.com.au) is actually quite easy\nand this utility uses a simple approach. By merely requiring the user to\nnot have the file open at the time the prices are updated, it can avoid\nthe awkward interface with\n[Finance::Quote](https://github.com/finance-quote) and GnuCash\ncompletely, and merely write directly to the XML file.\n\nIf you like this utility then you may be interested in [another\nutility](https://github.com/bulletmark/gnucash-select) I created to\nfacilitate working with multiple GnuCash files.\n\n## USAGE\n\nType `gnucash-asx-fetch -h` to view the usage summary:\n\n```\nusage: gnucash-asx-fetch [-h] [-i] [-q] [-d] path [path ...]\n\nUtility to fetch and add current ASX share prices to one or more gnucash XML\nfiles.\n\npositional arguments:\n  path               directories or files to update\n\noptions:\n  -h, --help         show this help message and exit\n  -i, --ignore-open  silently ignore any files currently open\n  -q, --quiet        suppress message output\n  -d, --dry-run      do not update any file[s]\n```\n\n## INSTALLATION\n\nArch Linux users can install [gnucash-asx-fetch from the\nAUR](https://aur.archlinux.org/packages/gnucash-asx-fetch/).\n\nPython 3.7 or later is required. Note [gnucash-asx-fetch is on\nPyPI](https://pypi.org/project/gnucash-asx-fetch/) so just ensure that\n[`pipx`](https://pypa.github.io/pipx/) is installed then type the\nfollowing:\n\n```\n$ pipx install gnucash-asx-fetch\n```\n\nTo upgrade:\n\n```\n$ pipx upgrade gnucash-asx-fetch\n```\n\n## LICENSE\n\nCopyright (C) 2020 Mark Blakeney. This program is distributed under the\nterms of the GNU General Public License.\nThis program is free software: you can redistribute it and/or modify it\nunder the terms of the GNU General Public License as published by the\nFree Software Foundation, either version 3 of the License, or any later\nversion.\nThis program is distributed in the hope that it will be useful, but\nWITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General\nPublic License at \u003chttp://www.gnu.org/licenses/\u003e for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbulletmark%2Fgnucash-asx-fetch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbulletmark%2Fgnucash-asx-fetch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbulletmark%2Fgnucash-asx-fetch/lists"}