cr_journals {rcrossref} | R Documentation |
Search CrossRef journals
Description
Search CrossRef journals
Usage
cr_journals(
issn = NULL,
query = NULL,
filter = NULL,
offset = NULL,
limit = NULL,
sample = NULL,
sort = NULL,
order = NULL,
facet = FALSE,
works = FALSE,
cursor = NULL,
cursor_max = 5000,
.progress = "none",
flq = NULL,
select = NULL,
...
)
cr_journals_(
issn = NULL,
query = NULL,
filter = NULL,
offset = NULL,
limit = NULL,
sample = NULL,
sort = NULL,
order = NULL,
facet = FALSE,
works = FALSE,
cursor = NULL,
cursor_max = 5000,
.progress = "none",
parse = FALSE,
flq = NULL,
select = NULL,
...
)
Arguments
issn |
(character) One or more ISSN's. Format: XXXX-XXXX. |
query |
Query terms |
filter |
Filter options. See examples for usage examples
and |
offset |
Number of record to start at. Minimum: 1. For
|
limit |
Number of results to return in the query. Not relavant when searching with specific dois. Default: 20. Max: 1000 |
sample |
(integer) Number of random results to return. when you use
the sample parameter, the rows and offset parameters are ignored.
Ignored unless |
sort |
Field to sort on. Acceptable set of fields to sort on:
|
order |
(character) Sort order, one of 'asc' or 'desc' |
facet |
(logical) Include facet results. Boolean or string with
field to facet on. Valid fields are *, affiliation, funder-name,
funder-doi, orcid, container-title, assertion, archive, update-type,
issn, published, source, type-name, publisher-name, license,
category-name, assertion-group. Default: |
works |
(logical) If |
cursor |
(character) Cursor character string to do deep paging.
Default is None. Pass in '*' to start deep paging. Any combination of
query, filters and facets may be used with deep paging cursors.
While the |
cursor_max |
(integer) Max records to retrieve. Only used when
cursor param used. Because deep paging can result in continuous requests
until all are retrieved, use this parameter to set a maximum number of
records. Of course, if there are less records found than this value,
you will get only those found. When cursor pagination is being used
the |
.progress |
Show a |
flq |
field queries. One or more field queries. Acceptable set of field query parameters are:
Note: |
select |
(character) One or more field to return (only those fields are returned) |
... |
Named parameters passed on to |
parse |
(logical) Whether to output json |
Details
BEWARE: The API will only work for CrossRef DOIs.
Note that some parameters are ignored unless works=TRUE
: sample, sort,
order, filter
Deep paging (using the cursor)
When using the cursor, a character string called next-cursor
is
returned from Crossref that we use to do the next request, and so on. We
use a while loop to get number of results up to the value of
cursor_max
. Since we are doing each request for you, you may not
need the next-cursor
string, but if you do want it, you can get
to it by indexing into the result like x$meta$next_cursor
Note that you can pass in curl options when using cursor, via "..."
Explanation of some data fields
backfile_dois: Back file records have a publication date older than two years ago.
current_dois: Current records are anything published in the last two years.
Note
See the "Rate limiting" seciton in rcrossref to get into the "fast lane"
References
https://github.com/CrossRef/rest-api-doc
See Also
Other crossref:
cr_funders()
,
cr_licenses()
,
cr_members()
,
cr_prefixes()
,
cr_types()
,
cr_works()
Examples
## Not run:
cr_journals(issn="2167-8359")
cr_journals()
cr_journals(issn="2167-8359", works=TRUE)
cr_journals(issn=c('1803-2427','2326-4225'))
cr_journals(query="ecology")
cr_journals(issn="2167-8359", query='ecology', works=TRUE,
sort='score', order="asc")
cr_journals(issn="2167-8359", query='ecology', works=TRUE, sort='score',
order="desc")
cr_journals(issn="2167-8359", works=TRUE,
filter=c(from_pub_date='2014-03-03'))
cr_journals(query="peerj")
cr_journals(issn='1803-2427', works=TRUE)
cr_journals(issn='1803-2427', works=TRUE, sample=1)
cr_journals(limit=2)
## get facets back
cr_journals('1803-2427', works=TRUE, facet=TRUE)
cr_journals('1803-2427', works=TRUE, facet="published:*", limit = 0)
cr_journals(issn=c('1803-2427','2326-4225'), works=TRUE,
facet="published:*", limit = 10)
# Use the cursor for deep paging
cr_journals(issn='1932-6203', works = TRUE, cursor = "*", cursor_max = 500,
limit = 100)
cr_journals(c('1932-6203', '0028-0836'), works = TRUE, cursor = "*",
cursor_max = 300, limit = 100)
## with optional progress bar
cr_journals(issn='1932-6203', works = TRUE, cursor = "*", cursor_max = 90,
limit = 30, .progress = TRUE)
# fails, if you want works, you must give an ISSN
# cr_journals(query = "ecology", filter=c(has_full_text = TRUE),
# works = TRUE)
# Low level function - does no parsing to data.frame, get json or a list
cr_journals_(query = 'ecology')
cr_journals_("2167-8359")
cr_journals_(query = 'ecology', parse=TRUE)
cr_journals_("2167-8359", works = TRUE, cursor = "*",
cursor_max = 300, limit = 100)
cr_journals_("2167-8359", works = TRUE, cursor = "*",
cursor_max = 300, limit = 100, parse = TRUE)
# field queries
## query.author
cr_journals("2167-8359", works = TRUE, flq = c(`query.author` = 'Jane'))
# select only certain fields to return
res <- cr_journals('2167-8359', works = TRUE,
select = c('DOI', 'title'))
names(res$data)
## End(Not run)