Receipt/invoice parser. Takes a list of PDF/images → pdftotext/tesseract → Anthropic Claude API for extraction → contenteditable HTML.
Find a file
2024-07-14 23:50:06 +01:00
src moar silly changes 2024-07-14 23:50:06 +01:00
.gitignore implement action buttons 2024-07-13 03:34:51 +01:00
CONTRIBUTING.md finish script 2024-07-09 23:12:06 +01:00
LICENSE Initial commit 2024-07-09 21:29:41 +00:00
package-lock.json apply fixes 2024-07-14 22:40:37 +01:00
package.json apply fixes 2024-07-14 22:40:37 +01:00
README.md finish script 2024-07-09 23:12:06 +01:00

receipt-parser

Receipt/invoice parser. Takes a list of PDF/images → pdftotext/tesseract → Anthropic Claude API for extraction → contenteditable HTML. We use the Claude Haiku model to reduce cost while maintaining high accuracy.

The receipt-parser is a tool that takes PDF files or images of receipts and invoices as input, and extracts the relevant information using optical character recognition (OCR) and the Anthropic Claude API. The extracted data is then presented in an easy-to-read, editable HTML format.

System Requirements

Usage

First, clone the repository: git clone https://github.com/your-username/receipt-parser.git

Then, install the required dependencies: npm install

Obtain an Anthropic API key from https://www.anthropic.com/api

Run the script list so:

./index.sh /path/to/receipt1.pdf /path/to/receipt2.pdf ...

...it takes a list of files.

The script will process all PDF and image (anything Tesseract supports) files to:

  • Extract text using OCR and Tesseract
  • Convert that into a machine-readable JSON object with the Anthropic Claude API
  • Generate an HTML file with the extracted data for each input file.

Nautilus Script

To register the script as a Nautilus script (for easy right-click access in the file manager), follow these steps:

From the root of this repository, run this command:

ln -s $(pwd)/src/index.sh ~/.local/share/nautilus/scripts/parse-receipts

Then, restart Nautilus by running nautilus -q in the terminal.

After restarting Nautilus, you should be able to right-click on any PDF or image file and select "Scripts" > "parse-receipts" to run the receipt parser on the selected files.

Contributing

Contributions are very welcome - both issues and pull requests! Please mention in your pull request that you release your work under the MPL-2.0 (see below).

See CONTRIBUTING.md for a guide on what to expect when submitting a pull request or issue to this project.

If you're feeling that way inclined, the sponsor button at the top of the page (if you're on GitHub) will take you to my Liberapay profile if you'd like to donate to say an extra thank you :-)

License

This project is released under the GNU Public License 3.0. The full license text is included in the LICENSE file in this repository. Tldr legal have a great summary of the license if you're interested.