Работа с базой данных PubMed: различия между версиями

 
(не показано 6 промежуточных версий этого же участника)
Строка 3: Строка 3:


Файлы большие, могут биться при закачке. Поэтому рекомендуется после загрузки проверить контрольные суммы, скачав с сервера файлы .md5. В линуксе проверку по всему массиву файлов можно сделать например так:
Файлы большие, могут биться при закачке. Поэтому рекомендуется после загрузки проверить контрольные суммы, скачав с сервера файлы .md5. В линуксе проверку по всему массиву файлов можно сделать например так:
<syntaxhighlight lang="Bash">if md5sum -c pubmed21n*.xml.gz.md5</syntaxhighlight>
<syntaxhighlight lang="Bash">md5sum -c pubmed21n*.xml.gz.md5</syntaxhighlight>
показать количество побитых файлов:
<syntaxhighlight lang="Bash">md5sum -c pubmed21n*.xml.gz.md5 2>/dev/null | grep FAILED | wc -l</syntaxhighlight>


==Получение id статей по запросу==
==Страница публикации с конкретным pmid==
<nowiki>https://pubmed.ncbi.nlm.nih.gov/[pmid]</nowiki>
 
==Получение [[medline]] записи по pmid==
<nowiki>https://api.ncbi.nlm.nih.gov/lit/ctxp/v1/pubmed/?format=medline&id=[pmid]</nowiki>
 
==Получение pmid статей по запросу==


Для получения списка айдишников статей по ключевому слову можно использовать get-запрос:
Для получения списка айдишников статей по ключевому слову можно использовать get-запрос:
Строка 45: Строка 53:
Соответственно, список id статей: <code><res>.esearchresult.idlist</code>
Соответственно, список id статей: <code><res>.esearchresult.idlist</code>


==Параметры запроса==
===Параметры запроса===
* '''db''' − какую базу данных запрашиваем. Возможные значения: <code>pmc, pubmed</code>. Разница между PMC и PubMed в том, что на PMC статьи с полнотекстовым доступом, а на PubMed не всегда. Зато на PubMed больший охват статей по абстрактам. Учитывая то, что полный текст интересующей статьи достать [https://sci-hub.do не так уж и трудно], установка ''db'' в значение ''pubmed'' выглядит более предпочтительной.
* '''db''' − какую базу данных запрашиваем. Возможные значения: <code>pmc, pubmed</code>. Разница между PMC и PubMed в том, что на PMC статьи с полнотекстовым доступом, а на PubMed не всегда. Зато на PubMed больший охват статей по абстрактам. Учитывая то, что полный текст интересующей статьи достать [https://sci-hub.do не так уж и трудно], установка ''db'' в значение ''pubmed'' выглядит более предпочтительной.
* '''tool''' − PubMed просит указывать название инструментария или программы, которая работает с API. (Я указываю ''"odysseus"'' - по названию своей библиотеки, расширяющей Racket. -- [[Участник:Denis.s|Denis.s]] ([[Обсуждение участника:Denis.s|обсуждение]]))
* '''tool''' − PubMed просит указывать название инструментария или программы, которая работает с API. (Я указываю ''"odysseus"'' - по названию своей библиотеки, расширяющей Racket. -- [[Участник:Denis.s|Denis.s]] ([[Обсуждение участника:Denis.s|обсуждение]]))
Строка 53: Строка 61:
* '''term''' − собственно ключевое слово, по которому происходит отбор статей. Либо комбинация ключевых слов и частей записи, в которых они должны встретиться. Например <code>(aging[Abstract] AND aging[MeSH Terms]) OR (longevity[Abstract] AND longevity[MeSH Terms])</code>
* '''term''' − собственно ключевое слово, по которому происходит отбор статей. Либо комбинация ключевых слов и частей записи, в которых они должны встретиться. Например <code>(aging[Abstract] AND aging[MeSH Terms]) OR (longevity[Abstract] AND longevity[MeSH Terms])</code>


==Тьюториалы==
===Тьюториалы===
* [https://www.ncbi.nlm.nih.gov/books/NBK25499/ ncbi.nlm.nih.gov/books/NBK25499 − Подробная статья про параметры GET запросов]
* [https://www.ncbi.nlm.nih.gov/books/NBK25499/ ncbi.nlm.nih.gov/books/NBK25499 − Подробная статья про параметры GET запросов]