Skip to main content

FDA Drug Database

Project description

UNMAINTAINED

PLEASE NOTE: this library is not actively maintained and receives only minimal updates necessary. Most of it is no longer in active use at Ro.

fdadb

travis pypi codecov requiresio

A Django wrapper for fda.gov National Drug Code (NDC) database. fdadb stores each row under one name MedicationName object instead of having multiple drugs with the same name next to each other, for example: In the NDC database there are around 21 Viagras (with different strengths) so in such case we save the MedicationName: Viagra and under this name we store all the 21 instances. This allows for better user experience when searching through the list of drugs.

Setting Up

  • pip install fdadb

  • Add fdadb to your INSTALLED_APPS

  • ./manage.py migrate fdadb

  • ./manage.py fetch_ndc_database - might take 15-30 minutes (the command will fetch all items from FDA database and save it in your project)

API:

All APIs are searchable with ?q=term query param.

medications/

Returns list of MedicationName objects (pass ?q=termtosearch to filter the results), this API supports ElasticSearch for fast querying. Pagination does not work yet when ElasticSearch is enabled (in most cases this does not cause any issues, as this API is generally used for drug autocomplete). You can change the autocomplete limit by setting FDADB_AUTOCOMPLETE_LIMIT in your Django configuration (default: 10).

The ElasticSearch uses ngram for the query parameter.

medications/(?P<medication_name>[w-]+)/strengths

Returns list of medication strengths

medications/(?P<medication_name>[w-]+)/strengths/(?P<strength_id>[d-]+)/ndcs

Returns list of Medication NDCs

ElasticSearch

To enable support of ElasticSearch in autocomplete, set:

  • ELASTICSEARCH_URL in project configuration

  • Run ./manage.py fdadb_es_index after fetching the NDC database (use --drop_indexes in case you want to cleanup the medications index)

Manage.py commands

  • ./manage.py fdadb_es_index - indexes the products into ElasticSearch

  • ./manage.py fetch_ndc_database - fetches products data from NDS DB and saves in the database

Support

  • Django 1.11, 2.1, 2.2

  • Python 3.4-3.6

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fdadb-0.2.0.tar.gz (13.4 kB view details)

Uploaded Source

Built Distribution

fdadb-0.2.0-py2.py3-none-any.whl (12.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file fdadb-0.2.0.tar.gz.

File metadata

  • Download URL: fdadb-0.2.0.tar.gz
  • Upload date:
  • Size: 13.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for fdadb-0.2.0.tar.gz
Algorithm Hash digest
SHA256 27d2a67adc2441f50cff9317d4c6903101bbbcda3dddfe18dec9368213f120eb
MD5 ec96b30a40eff9eea182e0376b53a219
BLAKE2b-256 49f92839d16e30c04ff4d15ecf598aba4a58a81e236b6360936d3c2d7b32589a

See more details on using hashes here.

File details

Details for the file fdadb-0.2.0-py2.py3-none-any.whl.

File metadata

  • Download URL: fdadb-0.2.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 12.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for fdadb-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 777d29d37bdc6161b2f3c82f2062c7169fbcea2124953671fce1fe30c1d43179
MD5 30c4600be941947506ae1fcb408d31cb
BLAKE2b-256 f847a14a97975262da7594220cb3ec1687ce714e3235442be322903064bf1cce

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page