alexdlaird / amazon-orders

A CLI and library for interacting with Amazon order history
https://amazon-orders.readthedocs.io/en/latest
MIT License
14 stars 7 forks source link

Support for international Amazon sites #15

Open NicolasP opened 5 months ago

NicolasP commented 5 months ago

Acknowledgements

Describe the Feature

The code is only compatible with Amazon US. It would be really nice to make it possible to use it on international Amazon sites.

Describe Alternative Solutions/Workarounds

Setting AMAZON_BASE_URL is not sufficient, because the parsing code expects English text and US Dollar amounts.

alexdlaird commented 5 months ago

This is a known limitation of the library and called out in the README, but I would gladly accept a PR to add international support! I added the AMAZON_BASE_URL configurability because that at least allows you to use amazon.co.uk, or other English-based international sites. But yes, support for other languages and currencies would be appreciated. I do not have the expertise or proficiency to implement the parsing for that, but would love to make this a more collaborative library.

github-actions[bot] commented 5 months ago

This issue is stale because it has remained open with no further activity on it. Comment with additional context or the issue will be closed automatically. Thank you for your contribution!

alexdlaird commented 4 months ago

I do not plan on implementing additional regionalizations myself, as this ticket requests, but what I do plan on doing is eliminating constants.py and replacing it with a proper localization implementation, probably an interface with an install() that defaults to en-US. Support for a basic config file where you can update your preferred localization then would also be supported. Then others can submit PRs to add additional localizations, and once merged, any user will be able to install that locale via the config file.

I have yet landed on how exactly I'm going to approach this, I'm considering gettext() (or similar, gettext might be overkill for what we need). Reopened this issue as a placeholder for this work.