使用R导出期刊文章的引用

时间:2015-01-10 03:48:34

标签: javascript r web-scraping scrape

我想要R:

  1. 转到THIS页面。
  2. 选择" Bibtex"格式,"引文和摘要" for" Export type"。
  3. 按"提交"并将引文文件下载到指定的文件夹。
  4. 有可能吗?我怎么能用R做到这一点? (我不了解JavaScript,我无法理解与此问题相关的早期主题。123

    最终,我想下载期刊的所有bibtex(以及可能的Endnote)引文(例如THIS期刊)。

2 个答案:

答案 0 :(得分:5)

我认为rcrossref https://github.com/ropensci/rcrossref#citation-search可以为您提供帮助,例如

install.packages("rcrossref")
library("rcrossref")    

cat(cr_cn(dois = "10.1126/science.169.3946.635", format = "bibtex"))
#> @article{Frank_1970,
#>  doi = {10.1126/science.169.3946.635},
#>  url = {http://dx.doi.org/10.1126/science.169.3946.635},
#>  year = 1970,
#>  month = {aug},
#>  publisher = {American Association for the Advancement of Science ({AAAS})},
#>  volume = {169},
#>  number = {3946},
#>  pages = {635--641},
#>  author = {H. S. Frank},
#>  title = {The Structure of Ordinary Water: New data and interpretations are yielding new insights     into this fascinating substance},
#>  journal = {Science}
#> }

有了这个,你只需要DOI。包中还有其他功能可以搜索文章并通过出版商等获取DOI。

希望有所帮助

答案 1 :(得分:4)

您可以使用httr包伪造表单提交。对于此请求,您可以

values <- list(
    doi = "10.1002%2Fasi.21577",
    fileFormat = "BIBTEX",
    hasAbstract = "CITATION_AND_ABSTRACT"
)

library(httr)
url <- "http://onlinelibrary.wiley.com/documentcitationdownloadformsubmit"
rr <- POST(url=url, body=values, encode="form")
content(rr, "text")
# [1] "@article {ASI:ASI21577,\nauthor = {Callahan, Ewa S. ...