Главная · PubMed на русском · API PubMed: как выгружать данные через E-utilities
API PubMed: как выгружать данные через E-utilities
Обновлено: август 2026
- Интерфейс бесплатный, регистрация не обязательна, но ключ API повышает лимит запросов.
- Без ключа — до 3 запросов в секунду, с ключом — до 10.
- esearch возвращает список PMID, efetch — сами записи, esummary — краткие сведения.
- Массовые выгрузки следует делать через FTP-архивы, а не через тысячи запросов к API.
- Аннотации остаются под авторским правом издателей: свободна структура данных, а не их содержание.
Что умеет E-utilities
Это набор из нескольких точек входа, каждая со своей задачей. Рабочая связка почти всегда одинакова: сначала esearch находит идентификаторы по запросу, затем efetch или esummary получает по этим идентификаторам данные. Запрос в esearch пишется на том же языке, что и в веб-интерфейсе, включая теги полей и операторы, — поэтому стратегию удобно сначала отладить на сайте, а потом перенести в код.
| Точка входа | Что делает | Типичное применение |
|---|---|---|
| esearch | выполняет запрос, возвращает список PMID | отбор записей по стратегии поиска |
| efetch | возвращает полные записи в XML | выгрузка аннотаций и метаданных |
| esummary | краткие сведения в компактном виде | построение списков и таблиц |
| elink | связанные записи и ссылки в другие базы | поиск похожих статей, переход в PMC |
| einfo | описание полей и статистику базы | проверка доступных полей |
| epost | загружает список идентификаторов на сервер | работа с большими наборами |
Какие действуют ограничения
Ограничение по частоте: не более трёх запросов в секунду без ключа и десяти с ключом. Ключ бесплатно выдаётся в настройках аккаунта NCBI. Превышение приводит к ошибкам и, при упорстве, к блокировке адреса.
Второе правило — время: объёмные задания просят выполнять в нерабочие часы по времени восточного побережья США, в выходные или ночью. Третье — идентификация: в запросах указываются параметры tool и email, чтобы NLM мог связаться с вами при проблемах вместо немедленной блокировки. Это не формальность, а способ не потерять доступ.
Когда нужен FTP вместо API
Если требуется вся база или её крупная часть, обращаться к API тысячами запросов неправильно и медленно. Для этого существуют готовые архивы: ежегодный базовый набор MEDLINE и ежедневные обновления к нему, а также архивы открытой части PMC. Один скачанный файл заменяет десятки тысяч запросов.
Практическое правило: API — для выборок и точечных обращений, FTP-архивы — для массивов. Если ваш скрипт собирается сделать больше нескольких десятков тысяч запросов, почти наверняка нужен архив.
Что можно делать с полученными данными
Здесь важно разделить два слоя. Библиографические метаданные — авторы, журнал, год, идентификаторы — можно свободно использовать, хранить и публиковать. Аннотации остаются объектом авторского права издателей: NLM предоставляет к ним доступ, но не передаёт прав на их переиздание и перевод.
Отсюда наш собственный принцип: кластер страниц о PubMed учит пользоваться базой и не является её зеркалом — мы не переводим и не размещаем чужие аннотации, потому что это было бы производным произведением от материалов издателей. Условия, на которых мы публикуем собственные материалы, описаны на странице о лицензии.
С чего начать разработчику
Порядок, экономящий время: отладить стратегию поиска в веб-интерфейсе и проверить её через Search details; получить ключ API; реализовать связку esearch → efetch с соблюдением лимита частоты и обязательным повтором при ошибке; сохранять сырые ответы, а не только разобранные поля.
Последнее пригождается чаще, чем кажется: при уточнении задачи разбирать заново придётся те же записи, а повторная выгрузка — это снова часы и снова лимиты. Разбор синтаксиса запросов, который понадобится для esearch, — на странице о расширенном поиске.
Опубликуйте медицинскую работу в открытом доступе
арХиворг.ру — российский открытый архив: PDF, авторы и организация, модерация 1–2 рабочих дня, постоянная ссылка, идентификатор AX и лицензия CC BY 4.0. Плата за публикацию не взимается.
Частые вопросы
Нужен ли ключ API обязательно?
Нет, интерфейс работает и без него, но лимит будет втрое ниже. Ключ бесплатен и получается в настройках аккаунта NCBI за минуту, поэтому для любой регулярной задачи его стоит получить.
Можно ли получить через API полные тексты статей?
Только те, что находятся в открытой части PMC. Тексты, лежащие у издателей по подписке, через интерфейс NLM недоступны — это вопрос прав, а не технических возможностей.
Отдаёт ли API рубрики MeSH?
Да, efetch возвращает их в XML вместе с указанием главных рубрик и подзаголовков. Учтите, что у свежих записей разметки может ещё не быть: она выполняется вручную и с задержкой.
Есть ли ограничение на размер одного запроса?
На практике за один efetch запрашивают до нескольких сотен идентификаторов; для больших наборов используется epost, который загружает список на сервер и позволяет обрабатывать его порциями.
Смотрите также: PubMed на русском · Расширенный поиск · Что такое PMC · PMID, DOI и PMCID · Поиск в PubMed: синтаксис запросов и фильтры · MeSH на русском: как найти нужную рубрику
Важно. Материалы носят научно-информационный характер и адресованы медицинским и научным работникам: это не медицинская рекомендация и не руководство по диагностике и лечению. арХиворг.ру не связан с Национальной медицинской библиотекой США (NLM) и не является зеркалом или переводом базы PubMed; названия PubMed, MEDLINE, PMC и MeSH принадлежат их правообладателям и используются здесь для указания на соответствующие сервисы. Правила работы сервисов меняются — сверяйтесь с официальной документацией NLM.