Search PLoS Journals authors.
plosauthor(
q = NULL,
fl = "id",
fq = NULL,
sort = NULL,
start = 0,
limit = 10,
sleep = 6,
errors = "simple",
proxy = NULL,
callopts = NULL,
progress = NULL,
...
)
Search terms (character). You can search on specific fields by doing 'field:your query'. For example, a real query on a specific field would be 'author:Smith'.
Fields to return from search (character) [e.g., 'id,title'],
any combination of search fields (see the dataset plosfields
)
List specific fields to filter the query on (if NA, all queried).
The options for this parameter are the same as those for the fl parameter.
Note that using this parameter doesn't influence the actual query, but is used
to filter the results to a subset of those you want returned. For example,
if you want full articles only, you can do 'doc_type:full'
. In another example,
if you want only results from the journal PLOS One, you can do
'journal_key:PLoSONE'
. See journalnamekey
for journal
abbreviations.
Sort results according to a particular field, and specify ascending (asc) or descending (desc) after a space; see examples. For example, to sort the counter_total_all field in descending fashion, do sort='counter_total_all desc'
Record to start at (used in combination with limit when you need to cycle through more results than the max allowed=1000). See Pagination below
Number of results to return (integer). Setting limit=0
returns only
metadata. See Pagination below
Number of seconds to wait between requests. No need to use this for a single call to searchplos. However, if you are using searchplos in a loop or lapply type call, do sleep parameter is used to prevent your IP address from being blocked. You can only do 10 requests per minute, so one request every 6 seconds is about right.
(character) One of simple or complete. Simple gives http code and error message on an error, while complete gives both http code and error message, and stack trace, if available.
List of arguments for a proxy connection, including one or more of:
url, port, username, password, and auth. See proxy
for
help, which is used to construct the proxy connection.
(list) optional curl options passed to HttpClient
a function with logic for printing a progress
bar for an HTTP request, ultimately passed down to curl.
only supports httr::progress()
Additional Solr arguments
Author names, in addition to any other fields requested in a data.frame.
Read more about faceting here: urlhttp://wiki.apache.org/solr/SimpleFacetParameters
Don't be surprised if queries you perform in a scripting language, like using rplos
in R, give different results than when searching for articles on the PLOS website. I am
not sure what exact defaults they use on their website. There are a few things to consider.
You can tweak which types of articles are returned: Try using the article_type
filter in the fq
parameter. For which journal to search, e.g., do
'journal_key:PLoSONE'
. See journalnamekey()
for journal
abbreviations.
To search phrases, e.g., synthetic biology as a single item, rather than
separate occurrences of synthetic and biology, simply put double
quotes around the phrase. For example, to search for cases of synthetic biology,
do searchplos(q = '"synthetic biology"')
.
You can modify phrase searches as well. For example,
searchplos(q = '"synthetic biology" ~ 10')
asks for cases of
synthetic biology within 10 words of each other. See examples.
The searchplos
function and the many functions that are wrappers around
searchplos
all do paginatino internally for you. That is, if you request for
example, 2000 results, the max you can get in any one request is 1000, so we'll do
two requests for you. And so on for larger requests.
You can always do your own paginatino by doing a lapply type call or a for loop to cycle through pages of results.
Details:
# NOT RUN {
plosauthor('Smith', 'id', limit=50)
plosauthor(q='Smith', fl=c('id','author'), limit=10)
# }
Run the code above in your browser using DataLab