成分データベース 「INCI API」使ってみた

こんにちは、Yuinaです。

今日は成分データベース 「INCI API」を使って、簡単なアプリを作りました。

INCI API — Beauty Ingredient Intelligence API
Cosmetics ingredient API for developers. Barcode lookup with INCI analysis, safety scoring, allergen detection, and skin…

まず、上記のURLからINCI APIのHPに飛びます。

APIキーを取得するために、会員登録orログインをします。

ダッシュボードから分析もできるみたいです。

今回のコード

※コードの詳細は割愛します✨

import json
import requests
import streamlit as st

st.title("美容成分検索アプリ")

ingredient_name = st.text_input("成分名を入力(INCI名)", "Glycerin")

API_KEY = "(任意のAPIキーを入力)"

if st.button("決定"):
    url = f"https://inciapi.com/v1/ingredients/{ingredient_name}"
    headers = {
        "X-API-Key": API_KEY,
        "Content-Type": "application/json",
    }

    with st.spinner("データ取得中。。。"):
        try:
            response = requests.get(url, headers=headers)

            if response.status_code == 200:
                st.success("データ取得成功!")
                data = response.json()

                st.subheader(f"{ingredient_name} の詳細")
                st.json(data)

            else:
                st.error(
                    f"ステータスコード: {response.status_code})"
                )
                st.write(response.text)

        except Exception as e:
            st.error(f"例外エラー: {e}")

ターミナルでコマンドを実行します!

streamlit run ui.py 

ブラウザ上に、下記のような画面が自動で表示されます。

「決定」ボタンを押下すると、グリセリンに関するデータが表示されます。

日本語に直すとこんな感じ。

今後ですが、

画像には大量の情報が収集されているので、欲しい情報だけ入手できるようにjsonファイルを編集したいです。

それと、Google翻訳で英語から日本語に表記を変更したときに、表記揺れがありました。

※文章が敬語だったり、敬語じゃなかったり↓

さらにGoogleのAPIを使用して、改善していきたいです。

ありがとうございました✨

タイトルとURLをコピーしました