2016-07-22 97 views
0

將表格提交到知識網站我感興趣的是使用RrvestWeb of Knowledge刮取期刊的標題。但是,我在提交正確表單時遇到問題。我對1960-1970年的所有經濟計量表文章感興趣。我使用本地大學圖書館的訪問自動登錄。使用R和rvest

當我運行

library("rvest") 
library("httr") 
link = "http://isiknowledge.com/wos" 
form = html_session(link) %>% html_form() # returns list of 6 forms 
form[[4]] = set_values(form[[4]], # set values in form number 4 
    product = "WOS", 
    range = "ALL", 
    action = "search", 
    period = "Range Selection", 
    startYear = "1960", 
    endYear = "1970", 
    range = "ALL", 
    'value(select1)' = "SO", 
    'value(input1)' = "econometrica", 
    formUpdated = "TRUE") 

submit_form(html_session(link), form = form) 

我有兩個問題:第一,它與'',而不是「計量經濟學」提出,和第二,我收到以下錯誤信息:Error in if (!(submit %in% names(submits))) { : argument is of length zero

有一個Python替代here但代碼必須在R.任何幫助如何取得進展將不勝感激。

回答

1

我和ISI頁面有類似的問題,問題是他們至少有時設計沒有提交按鈕的表單(使用JavaScript處理提交)。我檢查了the link you posted,那個頁面上的第四種形式似乎就是這種情況(儘管我不確定搜索圖像是否用作提交按鈕)。

如果這是問題,那麼我對「Submit form with no submit button in rvest」問題的回答可能會爲您的案例提供解決方案。

簡而言之,您可以在您的代碼版本中注入一個提交按鈕,然後提交該代碼。如何做到這一點的詳細信息在鏈接的帖子。