Skip to main content

py-fdc

A python interface to interact with the USDA's FoodDataCentral API

Features

  • An object oritented interface for FoodDataCentral's

Requirements

  • Python >=3.10

Dependencies

Development Dependencies

Installation

The simplest way to install it is to pip install it.

pip install py-usda-fdc

To install the development version you can pip the git version.

pip install git+https://github.com/ghostiek/py-fdc.git

Getting Started

Get an API Key

An API Key is necessary to make calls to USDA's API. You can get one by filling in this form.

# Import the FDC module
from fdc.fdc import FDC

# Initialize the client with your API key
client = FDC(api_key)

Getting the Serialized output from the API

# Get Food using FDCId
food = client.get_food(fdc_id) # Returns a Food object

# Get multiple Foods using a list of FDCIds
foods = client.get_foods([fdc_id1, fdc_id2, fdc_id3]) # Returns a list of Food objects

# Get a paged list of foods
food_list = client.get_foods_list() # Returns a list of AbridgedFood

# Search foods using keywords, in this case, get 200 cheese items
cheeses = client.get_foods_search("cheese") # Returns a SearchResult object

Getting the Raw JSON as a string

Unfortunately, the USDA's FoodDataCentral API can be quite inconsistent at times, I've tried mapping it the best I could but if it results in an error, you can always just get the json string using the raw parameter Here is the equivalent of the functions referenced previously, except the output is a string.

# All of them are strings
food_raw = client.get_food_raw(fdc_id)
foods_raw = client.get_foods_raw([fdc_id1, fdc_id2, fdc_id3])
food_list_raw = client.get_foods_list_raw()
cheeses_raw = client.get_foods_search_raw("cheese")

API Documentation

More information about the API is available here

Release files for py-usda-fdc 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for py-usda-fdc 0.2.0
File Size Uploaded
py_usda_fdc-0.2.0.tar.gz 30.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for py-usda-fdc 0.2.0
File Interpreter ABI Platform
py_usda_fdc-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 65.9 kB

Release files / py_usda_fdc-0.2.0.tar.gz

Download URL py_usda_fdc-0.2.0.tar.gz
Size 30.7 kB
Tags Source
SHA-256 checksum
How to use checksums
d40e2d697ed6365c3d4310bfeefcc20f00c2db6b696ff1fb91242a8924c11f39
BLAKE2b-256 checksum
How to use checksums
b78bad0ab6edf75d38d6dbbfcc03c8bc431f32c34bc4b6c25093e2d3f1902d80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.11

Release files / py_usda_fdc-0.2.0-py3-none-any.whl

Download URL py_usda_fdc-0.2.0-py3-none-any.whl
Size 35.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
334a95e861830644ba95815360143450d1a40fee6a6817f99821edc78b770b2a
BLAKE2b-256 checksum
How to use checksums
8533183ce29780c632f1266098d301d0ec02f71942367bf7928fcf2e6806b950
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.11

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page