# NOT RUN {
# connect
(cli <- SolrClient$new(host = "api.plos.org", path = "search", port = NULL))
# get stats
solr_stats(cli, params = list(q='science', stats.field='counter_total_all'),
raw=TRUE)
solr_stats(cli, params = list(q='title:"ecology" AND body:"cell"',
stats.field=c('counter_total_all','alm_twitterCount')))
solr_stats(cli, params = list(q='ecology',
stats.field=c('counter_total_all','alm_twitterCount'),
stats.facet='journal'))
solr_stats(cli, params = list(q='ecology',
stats.field=c('counter_total_all','alm_twitterCount'),
stats.facet=c('journal','volume')))
# Get raw data, then parse later if you feel like it
## json
out <- solr_stats(cli, params = list(q='ecology',
stats.field=c('counter_total_all','alm_twitterCount'),
stats.facet=c('journal','volume')), raw=TRUE)
library("jsonlite")
jsonlite::fromJSON(out)
solr_parse(out) # list
solr_parse(out, 'df') # data.frame
## xml
out <- solr_stats(cli, params = list(q='ecology',
stats.field=c('counter_total_all','alm_twitterCount'),
stats.facet=c('journal','volume'), wt="xml"), raw=TRUE)
library("xml2")
xml2::read_xml(unclass(out))
solr_parse(out) # list
solr_parse(out, 'df') # data.frame
# Get verbose http call information
solr_stats(cli, params = list(q='ecology', stats.field='alm_twitterCount'),
callopts=list(verbose=TRUE))
# }
Run the code above in your browser using DataLab