Это может дать вам начало - кажется, можно снять несколько одновременно.
library(rentrez)
library(xml2)
# number of articles for term copd
count <- entrez_search(db = "pubmed", term = "copd")$count
# set max to count
id_search <- entrez_search(db = "pubmed", term = "copd", retmax = count, use_history = T)
# get all
document <- entrez_fetch(db = "pubmed", rettype = "XML", web_history = id_search$web_history)
document_list <- as_list(read_xml(document))
Проблема в том, что это все еще занимает много времени, потому что существует большое количество документов.Также любопытно, что он возвращает ровно 10000 статей, когда я попробовал это - может быть ограничение на то, что вы можете вернуть сразу.
Затем вы можете использовать что-то вроде пакета purrr
, чтобы начать извлечениеинформация, которую вы хотите.