Данные
Условия повторного использования
База данных Open Food Facts доступна под Open Database License.
Отдельное содержимое базы данных доступно под Database Contents License.
Изображения продуктов доступны под Creative Commons Attribution ShareAlike licence.
Они могут содержать графические элементы, на которые распространяются авторские или иные права, которые в некоторых случаях могут быть растиражированы (права на цитирование или добросовестное использование).
Пожалуйста, прочитайте Условия использования и повторного использования перед повторным использованием данных.
Расскажите нам о своем повторном использовании
Мы очень заинтересованы в изучении целей использования данных Open Food Facts. Это не обязательно, но мы будем очень признательны, если вы расскажете нам о своих повторных использованиях, чтобы мы могли поделиться ими с сообществом Open Food Facts. Вы также можетезаполнить эту форму, чтобы получить шанс на добавление вашего приложения в избранное.
Экспорт данных Open Food Facts
Дампы базы данных и экспорт генерируются каждую ночь. База данных очень большая, так что вы можете найтиразные способы использования, в зависимости от варианта экспорта.
Информация о различных полях для дампа MongoDB и экспорта CSV доступна по адресу https://world.openfoodfacts.org/data/data-fields.txt
Дамп MongoDB
Данные для всех продуктов доступны в дампе базы данных MongoDB.
- Ссылка
- https://static.openfoodfacts.org/data/openfoodfacts-mongodbdump.gz
- sha256sum
- https://static.openfoodfacts.org/data/gz-sha256sum
- md5sum
- https://static.openfoodfacts.org/data/gz-md5sum
Экспорт дельты
Ежедневный экспорт дельты предоставляется за предыдущие 14 дней. Список доступных в настоящее время дельта-файлов можно найти по адресу https://static.openfoodfacts.org/data/delta/index.txt.
Каждая строка представляет файл, который доступен по адресу https://static.openfoodfacts.org/data/delta/{filename}.
Имя файла содержит временную метку UNIX первого и последнего изменения, содержащегося в файле JSON, так что файлы дельта можно импортировать (после извлечения) с помощью mongoimport в алфавитном порядке.
Обратите внимание, что из-за природы mongoexport, дельта-файлы не смогут рассказать вам об удаленных продуктах. Чтобы убрать удалённый товар из базы данных, вам нужно импортировать полный дамп MongoDB.
Экспорт данных CSV
Вся база данных также доступна в формате JSONL (иногда называемом LDJSON или NDJSON), где каждая строка является объектом JSON. Он представляет те же данные, что и экспорт из MongoDB. Файл сжат с помощью gzip.
Подходящим способом использования базы данных является использование DuckDB — инструмента внутри процессной аналитики, предназначенного для обработки больших объемов данных за доли секунды. Вы можете прочитать наш пост в блоге, где мы расскажем вам об исследовании и обработке базы данных Open Food Facts с помощью DuckDB
Экспорт данных Parquet на Hugging Face
Упрощенная версия дампа JSONL также доступна в формате Parquet. В ходе конвертации мы отфильтровали столбцы, которые содержат дублированную информацию, используются для внутренней отладки или просто неактуальны для пользователей.
Формат Parquet оказался удобным:
- Data is organized by column, rather than by row, which saves storage space and speeds up analytics queries, i.e. you can select just the columns you care about, optimizing query performances, even on entry-level computers.
- Highly efficient data compression and decompression, making it good for storing and sharing big datasets of any kind,
- Supports complex data types and advanced nested data structures.
The dataset is available on Hugging Face, a collaborative Machine Learning ecosystem where developers and researchers can share models and datasets.
Find more information in the Wiki, including guidelines for data reuse and example queries to get started.
Экспорт данных CSV
Данные по всем или некоторым продуктам можно загрузить в формате CSV (читаемый в LibreOffice, Excel и многих других программах) через форму расширенного поиска.
- Ссылка
- Еда: https://static.openfoodfacts.org/data/en.openfoodfacts.org.products.csv.gz (сжатый CSV в формате GZIP: ~ 0.9 Gb, uncompressed: ~ 9 Gb)
- Косметика: https://static.openbeautyfacts.org/data/en.openbeautyfacts.org.products.csv.gz
- Корм для домашних животных: https://static.openpetfoodfacts.org/data/en.openpetfoodfacts.org.products.csv.gz
- Все остальные продукты: https://static.openproductsfacts.org/data/en.openproductsfacts.org.products.csv.gz
Кодировка файла - Unicode UTF-8. Символом, который разделяет поля, является <tab> (табуляция).
Экспорт данных RDF
База данных также доступна в формате RDF (это эксперимент, который больше активно не поддерживается). Вы можете прочитать объявления на французском.
Экспорт данных изображения
Все изображения и результаты OCR можно загрузить с нашего сервера или из AWS (через программу AWS Open Data). Ознакомьтесь с нашей документацией, чтобы узнать больше о том, как загружать изображения
OpenAPI Documentation for the JSON API
JSON API также доступен для чтения данных о продукте. Этот API, в частности, используется в мобильном приложении Open Food Facts.
Мы улучшаем API сверхурочно, но мы тщательно следим за обратной совместимостью. Пожалуйста, сообщите нам если вы используете его, чтобы мы могли рассказать вам о возможных изменениях.
Откройте для себя наш APIУчастие в улучшении нашего API и документации OpenAPI
Мы стремимся завершить документирование API, добавить варианты использования и автоматизировать генерацию SDK. Если вы являетесь знатоком OpenAPI, мы будем рады вашей помощи.
Вы можете использовать API в производственных целях, при условии, что 1 вызов API = 1 реальному сканированию пользователем. Любая попытка извлечь данные из базы данных с помощью API, скорее всего, будет заблокирована, поскольку полный ежедневный экспорт доступен на этой же странице.
Кроме того, отправка HTTP-заголовка вместе с вызовом API — это хороший способ связаться с вами в случае возникновения каких-либо проблем.
XML API (не поддерживается)
Вы также можете получить результат в XML, используя .xml
Пример: https://world.openfoodfacts.org/api/v2/product/737628064502.xml
Этот API не поддерживается, и не документирован.Обертки и SDK
У нас наверняка есть оболочка для вашего любимого языка программирования. Если мы сделаем, вы можете использовать это и улучшить. Если мы не сделаем, вы можете помочь нам сделать это.
Они позволят вам потреблять данные, а также позволят вашим пользователям вносить новые данные
Общие принципы, которые помогут сделать ваших пользователей счастливыми
- You can search for information about products, including many useful computed values.
- If you can't get the information on a specific product, you can get your user to send photos and data, that will then be processed by Open Food Facts AI and contributors to get the computed result you want to show them.
- You can also implement the complete flow so that they get immediately the result with some effort on their side.
Если ваши пользователи не ожидают немедленного результата (например, приложения Inventory)
- Submit photos (front/nutrition/ingredients): most painless thing for your users
- The Open Food Facts AI - Robotoff - will generate some derived data from the photos
- Over time, other apps, and the Open Food Facts community will fill the data gaps
Если ваши пользователи ожидают немедленного результата (например, приложения по питанию)
- Submit nutrition facts + category > get Nutri-Score
- Submit ingredients > get the NOVA group (about food ultra-processing), additives, allergens, normalized ingredients, vegan, vegetarian…
- Submit category + labels > soon get the Eco-Score (about environmental impact)
Мобильное приложение для Android и iPhone
Код мобильного приложения Open Pet Food Facts доступен на GitHub (Flutter, Kotlin Android and Swift iOS).
We look to turn the deprecated Kotlin and Swift codebases into Kotlin and Swift SDKs, help welcome :-)
Приложение позволяет пользователям сканировать штрихкод продукта, чтобы найти о нём информацию, и добавить фото и информацию для новых продуктов.
Вы можете самостоятельно использовать код (он в открытом доступе) и помочь нам улучшить его, для каждого, на всей земле.
SDK
| Иконка | Язык / фреймворк | Ресурсы | Обсуждение |
|---|---|---|---|
| Кордова (старое приложение) | GitHub | Н/Д | |
| DART | GitHub pub.dev | Н/Д | |
| Elixir | GitHub | Канал Slack | |
| Go | GitHub | Канал Slack | |
| Java | GitHub | Канал Slack | |
| Spring Boot | GitHub | Канал Slack | |
| Kotlin | GitHub | Канал Slack | |
| JavaScript | GitHub | Канал Slack | |
| PHP | GitHub | Канал Slack | |
| PHP (Laravel) | GitHub | Канал Slack | |
| Python | GitHub | Канал Slack | |
| React Native | GitHub | Канал Slack | |
| Ruby | GitHub | Канал Slack | |
| Ржавчина | GitHub | Канал Slack | |
| R | GitHub | Канал Slack | |
| Swift | GitHub | Канал Slack | |
| .NET/C# | GitHub | Канал Slack |
Обсуждение данных, API и экспорт
Вы можете посмотреть часто задаваемые вопросы об API и экспорте данных и часто задаваемые вопросы Open Food Facts
Вы можете присоединиться к чату Open Food Facts Slack, который является предпочтительным способом задать вопросы и обсудить API. Пожалуйста задавайте свои вопросы в канале #api
Вы можете открыть ветку в нашем репозитории документации API
По любым вопросам относительно данных вы можете связаться с нами по адресу reuse@openfoodfacts.org