我正在一个科学数据库中搜索包含单词项目管理的论文摘要。这是链接:
要获取摘要,我需要单击任何论文并打开一个新页面。我怎样才能为 68 篇论文做到这一点?我用 R 和 bash 编程。
我正在一个科学数据库中搜索包含单词项目管理的论文摘要。这是链接:
要获取摘要,我需要单击任何论文并打开一个新页面。我怎样才能为 68 篇论文做到这一点?我用 R 和 bash 编程。
试试 RSelenium。使用 phantomjs,因为日期是由 ajax 调用请求和填写的。所以任何静态网页抓取工具都不起作用。
我设法在第一页上获得了列表。
http://cran.r-project.org/web/packages/RSelenium/vignettes/RSelenium-headless.html
我设法拉出的样本。
remove( mopub, m, run , rx, x , first1)
library(RSelenium)
pjs<- phantom( pjs_cmd="C:/Users/bhavin.patel/Downloads/phantomjs-2.0.0- windows/bin/phantomjs.exe")
Sys.sleep(5)
remDr <- remoteDriver( browserName = 'PhantomJS')
dsurl <- "http://en.journals.sid.ir/SearchPaper.aspxstr=project%20management"
remDr$open()
remDr$navigate(dsurl)
allt3 <-remDr$findElements('id', 'Table3')
lapply( allt3 , FUN=function(dst){ dst$getElementText(); })
[[1]]
[[1]][[1]]
[1] " 1 : EFFECTIVE FACTORS ON RURAL PEOPLE’S NON-PARTICIPATION OF MAHABAD’S DAM CATCHMENT IN WATERSHED MANAGEMENT PROJECTS\nAuthor(s): RASOULIAZAR SOLEIMAN*,FEALY SAEID\nJournal: INTERNATIONAL JOURNAL OF AGRICULTURAL MANAGEMENT AND DEVELOPMENT (IJAMAD)\nNumber: MARCH 2015 , Volume 5 , Number 1 ; Page(s) 19 To 26.\nKeyword(s): NON-PARTICIPATION, CATCHMENT, WATERSHED MANAGEMENT, MAHABAD TOWNSHIP, IRAN\nReference(s): (0) Citation(s): (0) FullText:"
另一种解决方法是通过POST在 bash 中使用 curl 的请求来获取列表。
您可以从 Network 下的 Firebug ( Firefox F12 ) 获取 curl post 语句,过滤 XHR 请求并复制最后一个请求的语句SearchPaper.aspx?str=project+management(右键单击 -> 复制 curl-adress)。
在此发布请求语句中,您必须将参数ctl00$ContentPlaceHolder1$txtPageNo 增加到所需的分页数(在本例中为 1-6)。
然后将输出解析为静态 xml 解析工具以获取您的数据。